@activecollab/components 2.0.274 → 2.0.276
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/cjs/components/EditableText/EditableText.js +2 -0
- package/dist/cjs/components/EditableText/EditableText.js.map +1 -1
- package/dist/cjs/components/Input/InputPassword.js +5 -2
- package/dist/cjs/components/Input/InputPassword.js.map +1 -1
- package/dist/esm/components/EditableText/EditableText.d.ts.map +1 -1
- package/dist/esm/components/EditableText/EditableText.js +2 -0
- package/dist/esm/components/EditableText/EditableText.js.map +1 -1
- package/dist/esm/components/Input/InputPassword.d.ts +2 -0
- package/dist/esm/components/Input/InputPassword.d.ts.map +1 -1
- package/dist/esm/components/Input/InputPassword.js +6 -3
- package/dist/esm/components/Input/InputPassword.js.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -89,6 +89,8 @@ var EditableText = exports.EditableText = /*#__PURE__*/(0, _react.forwardRef)(fu
|
|
|
89
89
|
e.target.blur();
|
|
90
90
|
}
|
|
91
91
|
if (e.key === "Escape") {
|
|
92
|
+
e.preventDefault();
|
|
93
|
+
e.stopPropagation();
|
|
92
94
|
escapeRef.current = true;
|
|
93
95
|
e.target.blur();
|
|
94
96
|
typeof onCancel === "function" && onCancel(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_EditableContent","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","EditableText","exports","forwardRef","_ref","ref","onSave","onCancel","inputProps","allowEmptyString","_ref$multiline","multiline","_ref$variant","variant","weight","_ref$disabled","disabled","invalid","wrapRef","children","props","_useState","useState","_useState2","currentValue","setCurrentValue","_useState3","_useState4","prevValue","setPrevValue","escapeRef","useRef","intTextareaRef","useEffect","handleBlur","useCallback","current","target","trim","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","handleChange","createElement","StyledDiv","$multiline","StyledMultilineSpan","forwardedAs","$disabled","className","onClick","focus","replace","StyledTextareaSpan","onFocus","onBlur","onKeyDown","onChange","placeholder","classNames","rows","EditableContent","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"EditableText.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_EditableContent","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","EditableText","exports","forwardRef","_ref","ref","onSave","onCancel","inputProps","allowEmptyString","_ref$multiline","multiline","_ref$variant","variant","weight","_ref$disabled","disabled","invalid","wrapRef","children","props","_useState","useState","_useState2","currentValue","setCurrentValue","_useState3","_useState4","prevValue","setPrevValue","escapeRef","useRef","intTextareaRef","useEffect","handleBlur","useCallback","current","target","trim","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","preventDefault","stopPropagation","handleChange","createElement","StyledDiv","$multiline","StyledMultilineSpan","forwardedAs","$disabled","className","onClick","focus","replace","StyledTextareaSpan","onFocus","onBlur","onKeyDown","onChange","placeholder","classNames","rows","EditableContent","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,7 +13,7 @@ var _IconButton = require("../IconButton");
|
|
|
13
13
|
var _Icons = require("../Icons");
|
|
14
14
|
var _Tooltip = require("../Tooltip");
|
|
15
15
|
var _Typography = require("../Typography");
|
|
16
|
-
var _excluded = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange"];
|
|
16
|
+
var _excluded = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange", "wrapperClassName"];
|
|
17
17
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
19
19
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
@@ -117,6 +117,7 @@ var InputPassword = exports.InputPassword = /*#__PURE__*/(0, _react.forwardRef)(
|
|
|
117
117
|
errorMessage = _ref2.errorMessage,
|
|
118
118
|
invalid = _ref2.invalid,
|
|
119
119
|
onChange = _ref2.onChange,
|
|
120
|
+
wrapperClassName = _ref2.wrapperClassName,
|
|
120
121
|
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
121
122
|
var inputRef = (0, _react.useRef)(null);
|
|
122
123
|
var handleRef = (0, _utils.useForkRef)(ref, inputRef);
|
|
@@ -157,7 +158,9 @@ var InputPassword = exports.InputPassword = /*#__PURE__*/(0, _react.forwardRef)(
|
|
|
157
158
|
console.warn("getStrength must be a function that accepts a string and returns a number.");
|
|
158
159
|
}
|
|
159
160
|
}
|
|
160
|
-
return /*#__PURE__*/_react.default.createElement(StyledInputPasswordWrapper,
|
|
161
|
+
return /*#__PURE__*/_react.default.createElement(StyledInputPasswordWrapper, {
|
|
162
|
+
className: wrapperClassName
|
|
163
|
+
}, /*#__PURE__*/_react.default.createElement(_Input.Input, _extends({}, rest, {
|
|
161
164
|
ref: handleRef,
|
|
162
165
|
size: size,
|
|
163
166
|
value: value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","transform","biggest","regular","big","StypedEyeIconSmall","styled","EyeSmallIcon","withConfig","displayName","componentId","StypedEyeOffIconSmall","EyeOffSmallIcon","StypedEyeIcon","EyeIcon","StypedEyeOffIcon","EyeOffIcon","StyledInfoIcon","InfoIcon","StyledInfoSmallIcon","InfoSmallIcon","StyledInputPasswordWrapper","div","InputPasswordAdornment","_ref","invalid","errorMessage","size","hideControl","showText","hideTooltipText","showTooltipText","disabled","toggleShow","createElement","Fragment","Tooltip","title","IconButton","variant","type","onClick","style","flexShrink","InputPassword","exports","forwardRef","_ref2","ref","_validation$levels","_ref2$size","_ref2$show","show","_ref2$showTooltipText","_ref2$hideTooltipText","_ref2$value","defaultValue","validation","onChange","rest","inputRef","useRef","handleRef","useForkRef","_useState","useState","_useState2","setShowText","_useState3","_useState4","strength","setStrength","_useState5","_useState6","setValue","handleChange","useCallback","target","getStrength","_inputRef$current","current","focus","prevState","useEffect","levels","console","warn","Input","endAdornment","StyledPasswordIndicatorWrapper","map","_","index","StyledPasswordIndicator","key","$strength","$index","Caption1","align","color"],"sources":["../../../../src/components/Input/InputPassword.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { Input, InputProps } from \"./Input\";\nimport {\n StyledPasswordIndicator,\n StyledPasswordIndicatorWrapper,\n} from \"./Styles\";\nimport { useForkRef } from \"../../utils\";\nimport { IconButton } from \"../IconButton\";\nimport {\n EyeIcon,\n EyeOffIcon,\n EyeOffSmallIcon,\n EyeSmallIcon,\n InfoIcon,\n InfoSmallIcon,\n} from \"../Icons\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Caption1 } from \"../Typography\";\n\nconst transform = {\n biggest: \"big\",\n regular: \"small\",\n big: \"medium\",\n} as const;\n\nexport interface ValidationProps {\n /** Strength calculating function */\n getStrength: (input: string) => 0 | 1 | 2 | 3 | 4;\n /** Array of strength level strings */\n levels: [string, string, string, string, string];\n}\n\nexport interface InputPasswordProps extends Omit<InputProps, \"type\" | \"size\"> {\n /** Input size */\n size?: \"regular\" | \"big\" | \"biggest\";\n /** Renders with shown text */\n show?: boolean;\n /** Removes show/hide control */\n hideControl?: boolean;\n /** Show tooltip text */\n showTooltipText?: string;\n /** Hide tooltip text */\n hideTooltipText?: string;\n /** Validation object */\n validation?: ValidationProps;\n /** Error message tooltip text */\n errorMessage?: string;\n}\n\nconst StypedEyeIconSmall = styled(EyeSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIconSmall = styled(EyeOffSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeIcon = styled(EyeIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIcon = styled(EyeOffIcon)`\n ${tw`tw-cursor-pointer`}\n`;\nconst StyledInfoIcon = styled(InfoIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInfoSmallIcon = styled(InfoSmallIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInputPasswordWrapper = styled.div`\n width: fit-content;\n display: flex;\n flex-direction: column;\n`;\n\ninterface InputPasswordAdornmentProps {\n invalid?: boolean;\n errorMessage?: string;\n size: \"regular\" | \"big\" | \"biggest\";\n hideControl?: boolean;\n showText: boolean;\n hideTooltipText: string;\n showTooltipText: string;\n disabled?: boolean;\n toggleShow?: () => void;\n}\n\nconst InputPasswordAdornment = ({\n invalid,\n errorMessage,\n size,\n hideControl,\n showText,\n hideTooltipText,\n showTooltipText,\n disabled,\n toggleShow,\n}: InputPasswordAdornmentProps) => (\n <>\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? <StyledInfoSmallIcon /> : <StyledInfoIcon />}\n </Tooltip>\n )}\n {!hideControl && (\n <Tooltip title={showText ? hideTooltipText : showTooltipText}>\n <IconButton\n variant=\"text gray\"\n type=\"button\"\n size={transform[size] as \"big\" | \"small\" | \"medium\"}\n disabled={disabled}\n onClick={toggleShow}\n style={{ flexShrink: 0 }}\n >\n {showText ? (\n size === \"regular\" ? (\n <StypedEyeOffIconSmall />\n ) : (\n <StypedEyeOffIcon />\n )\n ) : size === \"regular\" ? (\n <StypedEyeIconSmall />\n ) : (\n <StypedEyeIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </>\n);\n\nexport const InputPassword = forwardRef<HTMLInputElement, InputPasswordProps>(\n (\n {\n size = \"regular\",\n disabled,\n show = false,\n hideControl,\n showTooltipText = \"Show\",\n hideTooltipText = \"Hide\",\n value: defaultValue = \"\",\n validation,\n errorMessage,\n invalid,\n onChange,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const [showText, setShowText] = useState(show);\n const [strength, setStrength] = useState(0);\n const [value, setValue] = useState(() => defaultValue as string);\n\n const handleChange = useCallback(\n (e) => {\n setValue(e.target.value);\n typeof validation?.getStrength === \"function\" &&\n setStrength(validation.getStrength(e.target.value));\n typeof onChange === \"function\" && onChange(e.target.value);\n },\n [onChange, validation]\n );\n\n const toggleShow = useCallback(() => {\n inputRef.current?.focus();\n setShowText((prevState) => !prevState);\n }, []);\n\n useEffect(() => {\n setShowText(show);\n }, [show]);\n\n if (\n validation?.levels &&\n validation?.getStrength &&\n typeof validation?.getStrength === \"function\"\n ) {\n if (validation.levels.length !== 5) {\n console.warn(\"Levels length must be exactly 5.\");\n }\n if (typeof validation.getStrength(\"test\") !== \"number\") {\n console.warn(\n \"getStrength must be a function that accepts a string and returns a number.\"\n );\n }\n }\n\n return (\n <StyledInputPasswordWrapper>\n <Input\n {...rest}\n ref={handleRef}\n size={size}\n value={value}\n disabled={disabled}\n type={showText ? \"text\" : \"password\"}\n onChange={handleChange}\n invalid={invalid}\n data-testid=\"InputPassword\"\n endAdornment={\n <InputPasswordAdornment\n invalid={invalid}\n errorMessage={errorMessage}\n size={size}\n hideControl={hideControl}\n showText={showText}\n hideTooltipText={hideTooltipText}\n showTooltipText={showTooltipText}\n disabled={disabled}\n toggleShow={toggleShow}\n />\n }\n />\n {validation?.levels?.length === 5 &&\n typeof validation?.getStrength === \"function\" &&\n typeof validation?.getStrength(\"test\") === \"number\" && (\n <>\n <StyledPasswordIndicatorWrapper>\n {[...Array(4)].map((_, index) => (\n <StyledPasswordIndicator\n key={index}\n $strength={strength}\n $index={index}\n data-testid={strength >= index + 1 ? \"active\" : \"\"}\n />\n ))}\n </StyledPasswordIndicatorWrapper>\n <Caption1 align=\"right\" color=\"tertiary\">\n {validation.levels[strength]}\n </Caption1>\n </>\n )}\n </StyledInputPasswordWrapper>\n );\n }\n);\n\nInputPassword.displayName = \"InputPassword\";\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","transform","biggest","regular","big","StypedEyeIconSmall","styled","EyeSmallIcon","withConfig","displayName","componentId","StypedEyeOffIconSmall","EyeOffSmallIcon","StypedEyeIcon","EyeIcon","StypedEyeOffIcon","EyeOffIcon","StyledInfoIcon","InfoIcon","StyledInfoSmallIcon","InfoSmallIcon","StyledInputPasswordWrapper","div","InputPasswordAdornment","_ref","invalid","errorMessage","size","hideControl","showText","hideTooltipText","showTooltipText","disabled","toggleShow","createElement","Fragment","Tooltip","title","IconButton","variant","type","onClick","style","flexShrink","InputPassword","exports","forwardRef","_ref2","ref","_validation$levels","_ref2$size","_ref2$show","show","_ref2$showTooltipText","_ref2$hideTooltipText","_ref2$value","defaultValue","validation","onChange","wrapperClassName","rest","inputRef","useRef","handleRef","useForkRef","_useState","useState","_useState2","setShowText","_useState3","_useState4","strength","setStrength","_useState5","_useState6","setValue","handleChange","useCallback","target","getStrength","_inputRef$current","current","focus","prevState","useEffect","levels","console","warn","className","Input","endAdornment","StyledPasswordIndicatorWrapper","map","_","index","StyledPasswordIndicator","key","$strength","$index","Caption1","align","color"],"sources":["../../../../src/components/Input/InputPassword.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { Input, InputProps } from \"./Input\";\nimport {\n StyledPasswordIndicator,\n StyledPasswordIndicatorWrapper,\n} from \"./Styles\";\nimport { useForkRef } from \"../../utils\";\nimport { IconButton } from \"../IconButton\";\nimport {\n EyeIcon,\n EyeOffIcon,\n EyeOffSmallIcon,\n EyeSmallIcon,\n InfoIcon,\n InfoSmallIcon,\n} from \"../Icons\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Caption1 } from \"../Typography\";\n\nconst transform = {\n biggest: \"big\",\n regular: \"small\",\n big: \"medium\",\n} as const;\n\nexport interface ValidationProps {\n /** Strength calculating function */\n getStrength: (input: string) => 0 | 1 | 2 | 3 | 4;\n /** Array of strength level strings */\n levels: [string, string, string, string, string];\n}\n\nexport interface InputPasswordProps extends Omit<InputProps, \"type\" | \"size\"> {\n /** Input size */\n size?: \"regular\" | \"big\" | \"biggest\";\n /** Renders with shown text */\n show?: boolean;\n /** Removes show/hide control */\n hideControl?: boolean;\n /** Show tooltip text */\n showTooltipText?: string;\n /** Hide tooltip text */\n hideTooltipText?: string;\n /** Validation object */\n validation?: ValidationProps;\n /** Error message tooltip text */\n errorMessage?: string;\n /** Wrapper className */\n wrapperClassName?: string;\n}\n\nconst StypedEyeIconSmall = styled(EyeSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIconSmall = styled(EyeOffSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeIcon = styled(EyeIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIcon = styled(EyeOffIcon)`\n ${tw`tw-cursor-pointer`}\n`;\nconst StyledInfoIcon = styled(InfoIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInfoSmallIcon = styled(InfoSmallIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInputPasswordWrapper = styled.div`\n width: fit-content;\n display: flex;\n flex-direction: column;\n`;\n\ninterface InputPasswordAdornmentProps {\n invalid?: boolean;\n errorMessage?: string;\n size: \"regular\" | \"big\" | \"biggest\";\n hideControl?: boolean;\n showText: boolean;\n hideTooltipText: string;\n showTooltipText: string;\n disabled?: boolean;\n toggleShow?: () => void;\n}\n\nconst InputPasswordAdornment = ({\n invalid,\n errorMessage,\n size,\n hideControl,\n showText,\n hideTooltipText,\n showTooltipText,\n disabled,\n toggleShow,\n}: InputPasswordAdornmentProps) => (\n <>\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? <StyledInfoSmallIcon /> : <StyledInfoIcon />}\n </Tooltip>\n )}\n {!hideControl && (\n <Tooltip title={showText ? hideTooltipText : showTooltipText}>\n <IconButton\n variant=\"text gray\"\n type=\"button\"\n size={transform[size] as \"big\" | \"small\" | \"medium\"}\n disabled={disabled}\n onClick={toggleShow}\n style={{ flexShrink: 0 }}\n >\n {showText ? (\n size === \"regular\" ? (\n <StypedEyeOffIconSmall />\n ) : (\n <StypedEyeOffIcon />\n )\n ) : size === \"regular\" ? (\n <StypedEyeIconSmall />\n ) : (\n <StypedEyeIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </>\n);\n\nexport const InputPassword = forwardRef<HTMLInputElement, InputPasswordProps>(\n (\n {\n size = \"regular\",\n disabled,\n show = false,\n hideControl,\n showTooltipText = \"Show\",\n hideTooltipText = \"Hide\",\n value: defaultValue = \"\",\n validation,\n errorMessage,\n invalid,\n onChange,\n wrapperClassName,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const [showText, setShowText] = useState(show);\n const [strength, setStrength] = useState(0);\n const [value, setValue] = useState(() => defaultValue as string);\n\n const handleChange = useCallback(\n (e) => {\n setValue(e.target.value);\n typeof validation?.getStrength === \"function\" &&\n setStrength(validation.getStrength(e.target.value));\n typeof onChange === \"function\" && onChange(e.target.value);\n },\n [onChange, validation]\n );\n\n const toggleShow = useCallback(() => {\n inputRef.current?.focus();\n setShowText((prevState) => !prevState);\n }, []);\n\n useEffect(() => {\n setShowText(show);\n }, [show]);\n\n if (\n validation?.levels &&\n validation?.getStrength &&\n typeof validation?.getStrength === \"function\"\n ) {\n if (validation.levels.length !== 5) {\n console.warn(\"Levels length must be exactly 5.\");\n }\n if (typeof validation.getStrength(\"test\") !== \"number\") {\n console.warn(\n \"getStrength must be a function that accepts a string and returns a number.\"\n );\n }\n }\n\n return (\n <StyledInputPasswordWrapper className={wrapperClassName}>\n <Input\n {...rest}\n ref={handleRef}\n size={size}\n value={value}\n disabled={disabled}\n type={showText ? \"text\" : \"password\"}\n onChange={handleChange}\n invalid={invalid}\n data-testid=\"InputPassword\"\n endAdornment={\n <InputPasswordAdornment\n invalid={invalid}\n errorMessage={errorMessage}\n size={size}\n hideControl={hideControl}\n showText={showText}\n hideTooltipText={hideTooltipText}\n showTooltipText={showTooltipText}\n disabled={disabled}\n toggleShow={toggleShow}\n />\n }\n />\n {validation?.levels?.length === 5 &&\n typeof validation?.getStrength === \"function\" &&\n typeof validation?.getStrength(\"test\") === \"number\" && (\n <>\n <StyledPasswordIndicatorWrapper>\n {[...Array(4)].map((_, index) => (\n <StyledPasswordIndicator\n key={index}\n $strength={strength}\n $index={index}\n data-testid={strength >= index + 1 ? \"active\" : \"\"}\n />\n ))}\n </StyledPasswordIndicatorWrapper>\n <Caption1 align=\"right\" color=\"tertiary\">\n {validation.levels[strength]}\n </Caption1>\n </>\n )}\n </StyledInputPasswordWrapper>\n );\n }\n);\n\nInputPassword.displayName = \"InputPassword\";\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AAIf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAO5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IAC1E,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAC;IACvB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AAIf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAO5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IAC1E,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAC;IACvB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,8FA6JxB,CAAC"}
|
|
@@ -62,6 +62,8 @@ export const EditableText = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
62
62
|
e.target.blur();
|
|
63
63
|
}
|
|
64
64
|
if (e.key === "Escape") {
|
|
65
|
+
e.preventDefault();
|
|
66
|
+
e.stopPropagation();
|
|
65
67
|
escapeRef.current = true;
|
|
66
68
|
e.target.blur();
|
|
67
69
|
typeof onCancel === "function" && onCancel(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","classNames","EditableContent","StyledDiv","StyledMultilineSpan","StyledTextareaSpan","EditableText","_ref","ref","onSave","onCancel","value","inputProps","allowEmptyString","multiline","variant","weight","disabled","invalid","wrapRef","children","props","_objectWithoutPropertiesLoose","_excluded","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","intTextareaRef","handleBlur","e","current","target","trim","length","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","handleChange","createElement","_extends","$multiline","forwardedAs","$disabled","className","onClick","focus","String","replace","onFocus","onBlur","onKeyDown","onChange","placeholder","rows","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","classNames","EditableContent","StyledDiv","StyledMultilineSpan","StyledTextareaSpan","EditableText","_ref","ref","onSave","onCancel","value","inputProps","allowEmptyString","multiline","variant","weight","disabled","invalid","wrapRef","children","props","_objectWithoutPropertiesLoose","_excluded","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","intTextareaRef","handleBlur","e","current","target","trim","length","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","preventDefault","stopPropagation","handleChange","createElement","_extends","$multiline","forwardedAs","$disabled","className","onClick","focus","String","replace","onFocus","onBlur","onKeyDown","onChange","placeholder","rows","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,6 +21,8 @@ export interface InputPasswordProps extends Omit<InputProps, "type" | "size"> {
|
|
|
21
21
|
validation?: ValidationProps;
|
|
22
22
|
/** Error message tooltip text */
|
|
23
23
|
errorMessage?: string;
|
|
24
|
+
/** Wrapper className */
|
|
25
|
+
wrapperClassName?: string;
|
|
24
26
|
}
|
|
25
27
|
export declare const InputPassword: React.ForwardRefExoticComponent<InputPasswordProps & React.RefAttributes<HTMLInputElement>>;
|
|
26
28
|
//# sourceMappingURL=InputPassword.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputPassword.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/InputPassword.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAKf,OAAO,EAAS,UAAU,EAAE,MAAM,SAAS,CAAC;AAwB5C,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClD,sCAAsC;IACtC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3E,iBAAiB;IACjB,IAAI,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,CAAC;IACrC,8BAA8B;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iCAAiC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"InputPassword.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/InputPassword.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAKf,OAAO,EAAS,UAAU,EAAE,MAAM,SAAS,CAAC;AAwB5C,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClD,sCAAsC;IACtC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3E,iBAAiB;IACjB,IAAI,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS,CAAC;IACrC,8BAA8B;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iCAAiC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAuFD,eAAO,MAAM,aAAa,6FA4GzB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange"];
|
|
3
|
+
const _excluded = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange", "wrapperClassName"];
|
|
4
4
|
import React, { forwardRef, useCallback, useEffect, useRef, useState } from "react";
|
|
5
5
|
import styled from "styled-components";
|
|
6
6
|
import { Input } from "./Input";
|
|
@@ -99,7 +99,8 @@ export const InputPassword = /*#__PURE__*/forwardRef((_ref2, ref) => {
|
|
|
99
99
|
validation,
|
|
100
100
|
errorMessage,
|
|
101
101
|
invalid,
|
|
102
|
-
onChange
|
|
102
|
+
onChange,
|
|
103
|
+
wrapperClassName
|
|
103
104
|
} = _ref2,
|
|
104
105
|
rest = _objectWithoutPropertiesLoose(_ref2, _excluded);
|
|
105
106
|
const inputRef = useRef(null);
|
|
@@ -128,7 +129,9 @@ export const InputPassword = /*#__PURE__*/forwardRef((_ref2, ref) => {
|
|
|
128
129
|
console.warn("getStrength must be a function that accepts a string and returns a number.");
|
|
129
130
|
}
|
|
130
131
|
}
|
|
131
|
-
return /*#__PURE__*/React.createElement(StyledInputPasswordWrapper,
|
|
132
|
+
return /*#__PURE__*/React.createElement(StyledInputPasswordWrapper, {
|
|
133
|
+
className: wrapperClassName
|
|
134
|
+
}, /*#__PURE__*/React.createElement(Input, _extends({}, rest, {
|
|
132
135
|
ref: handleRef,
|
|
133
136
|
size: size,
|
|
134
137
|
value: value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputPassword.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","styled","Input","StyledPasswordIndicator","StyledPasswordIndicatorWrapper","useForkRef","IconButton","EyeIcon","EyeOffIcon","EyeOffSmallIcon","EyeSmallIcon","InfoIcon","InfoSmallIcon","Tooltip","Caption1","transform","biggest","regular","big","StypedEyeIconSmall","withConfig","displayName","componentId","StypedEyeOffIconSmall","StypedEyeIcon","StypedEyeOffIcon","StyledInfoIcon","StyledInfoSmallIcon","StyledInputPasswordWrapper","div","InputPasswordAdornment","_ref","invalid","errorMessage","size","hideControl","showText","hideTooltipText","showTooltipText","disabled","toggleShow","createElement","Fragment","title","variant","type","onClick","style","flexShrink","InputPassword","_ref2","ref","_validation$levels","show","value","defaultValue","validation","onChange","rest","_objectWithoutPropertiesLoose","_excluded","inputRef","handleRef","setShowText","strength","setStrength","setValue","handleChange","e","target","getStrength","_inputRef$current","current","focus","prevState","levels","length","console","warn","_extends","endAdornment","Array","map","_","index","key","$strength","$index","align","color"],"sources":["../../../../src/components/Input/InputPassword.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { Input, InputProps } from \"./Input\";\nimport {\n StyledPasswordIndicator,\n StyledPasswordIndicatorWrapper,\n} from \"./Styles\";\nimport { useForkRef } from \"../../utils\";\nimport { IconButton } from \"../IconButton\";\nimport {\n EyeIcon,\n EyeOffIcon,\n EyeOffSmallIcon,\n EyeSmallIcon,\n InfoIcon,\n InfoSmallIcon,\n} from \"../Icons\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Caption1 } from \"../Typography\";\n\nconst transform = {\n biggest: \"big\",\n regular: \"small\",\n big: \"medium\",\n} as const;\n\nexport interface ValidationProps {\n /** Strength calculating function */\n getStrength: (input: string) => 0 | 1 | 2 | 3 | 4;\n /** Array of strength level strings */\n levels: [string, string, string, string, string];\n}\n\nexport interface InputPasswordProps extends Omit<InputProps, \"type\" | \"size\"> {\n /** Input size */\n size?: \"regular\" | \"big\" | \"biggest\";\n /** Renders with shown text */\n show?: boolean;\n /** Removes show/hide control */\n hideControl?: boolean;\n /** Show tooltip text */\n showTooltipText?: string;\n /** Hide tooltip text */\n hideTooltipText?: string;\n /** Validation object */\n validation?: ValidationProps;\n /** Error message tooltip text */\n errorMessage?: string;\n}\n\nconst StypedEyeIconSmall = styled(EyeSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIconSmall = styled(EyeOffSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeIcon = styled(EyeIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIcon = styled(EyeOffIcon)`\n ${tw`tw-cursor-pointer`}\n`;\nconst StyledInfoIcon = styled(InfoIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInfoSmallIcon = styled(InfoSmallIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInputPasswordWrapper = styled.div`\n width: fit-content;\n display: flex;\n flex-direction: column;\n`;\n\ninterface InputPasswordAdornmentProps {\n invalid?: boolean;\n errorMessage?: string;\n size: \"regular\" | \"big\" | \"biggest\";\n hideControl?: boolean;\n showText: boolean;\n hideTooltipText: string;\n showTooltipText: string;\n disabled?: boolean;\n toggleShow?: () => void;\n}\n\nconst InputPasswordAdornment = ({\n invalid,\n errorMessage,\n size,\n hideControl,\n showText,\n hideTooltipText,\n showTooltipText,\n disabled,\n toggleShow,\n}: InputPasswordAdornmentProps) => (\n <>\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? <StyledInfoSmallIcon /> : <StyledInfoIcon />}\n </Tooltip>\n )}\n {!hideControl && (\n <Tooltip title={showText ? hideTooltipText : showTooltipText}>\n <IconButton\n variant=\"text gray\"\n type=\"button\"\n size={transform[size] as \"big\" | \"small\" | \"medium\"}\n disabled={disabled}\n onClick={toggleShow}\n style={{ flexShrink: 0 }}\n >\n {showText ? (\n size === \"regular\" ? (\n <StypedEyeOffIconSmall />\n ) : (\n <StypedEyeOffIcon />\n )\n ) : size === \"regular\" ? (\n <StypedEyeIconSmall />\n ) : (\n <StypedEyeIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </>\n);\n\nexport const InputPassword = forwardRef<HTMLInputElement, InputPasswordProps>(\n (\n {\n size = \"regular\",\n disabled,\n show = false,\n hideControl,\n showTooltipText = \"Show\",\n hideTooltipText = \"Hide\",\n value: defaultValue = \"\",\n validation,\n errorMessage,\n invalid,\n onChange,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const [showText, setShowText] = useState(show);\n const [strength, setStrength] = useState(0);\n const [value, setValue] = useState(() => defaultValue as string);\n\n const handleChange = useCallback(\n (e) => {\n setValue(e.target.value);\n typeof validation?.getStrength === \"function\" &&\n setStrength(validation.getStrength(e.target.value));\n typeof onChange === \"function\" && onChange(e.target.value);\n },\n [onChange, validation]\n );\n\n const toggleShow = useCallback(() => {\n inputRef.current?.focus();\n setShowText((prevState) => !prevState);\n }, []);\n\n useEffect(() => {\n setShowText(show);\n }, [show]);\n\n if (\n validation?.levels &&\n validation?.getStrength &&\n typeof validation?.getStrength === \"function\"\n ) {\n if (validation.levels.length !== 5) {\n console.warn(\"Levels length must be exactly 5.\");\n }\n if (typeof validation.getStrength(\"test\") !== \"number\") {\n console.warn(\n \"getStrength must be a function that accepts a string and returns a number.\"\n );\n }\n }\n\n return (\n <StyledInputPasswordWrapper>\n <Input\n {...rest}\n ref={handleRef}\n size={size}\n value={value}\n disabled={disabled}\n type={showText ? \"text\" : \"password\"}\n onChange={handleChange}\n invalid={invalid}\n data-testid=\"InputPassword\"\n endAdornment={\n <InputPasswordAdornment\n invalid={invalid}\n errorMessage={errorMessage}\n size={size}\n hideControl={hideControl}\n showText={showText}\n hideTooltipText={hideTooltipText}\n showTooltipText={showTooltipText}\n disabled={disabled}\n toggleShow={toggleShow}\n />\n }\n />\n {validation?.levels?.length === 5 &&\n typeof validation?.getStrength === \"function\" &&\n typeof validation?.getStrength(\"test\") === \"number\" && (\n <>\n <StyledPasswordIndicatorWrapper>\n {[...Array(4)].map((_, index) => (\n <StyledPasswordIndicator\n key={index}\n $strength={strength}\n $index={index}\n data-testid={strength >= index + 1 ? \"active\" : \"\"}\n />\n ))}\n </StyledPasswordIndicatorWrapper>\n <Caption1 align=\"right\" color=\"tertiary\">\n {validation.levels[strength]}\n </Caption1>\n </>\n )}\n </StyledInputPasswordWrapper>\n );\n }\n);\n\nInputPassword.displayName = \"InputPassword\";\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InputPassword.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","styled","Input","StyledPasswordIndicator","StyledPasswordIndicatorWrapper","useForkRef","IconButton","EyeIcon","EyeOffIcon","EyeOffSmallIcon","EyeSmallIcon","InfoIcon","InfoSmallIcon","Tooltip","Caption1","transform","biggest","regular","big","StypedEyeIconSmall","withConfig","displayName","componentId","StypedEyeOffIconSmall","StypedEyeIcon","StypedEyeOffIcon","StyledInfoIcon","StyledInfoSmallIcon","StyledInputPasswordWrapper","div","InputPasswordAdornment","_ref","invalid","errorMessage","size","hideControl","showText","hideTooltipText","showTooltipText","disabled","toggleShow","createElement","Fragment","title","variant","type","onClick","style","flexShrink","InputPassword","_ref2","ref","_validation$levels","show","value","defaultValue","validation","onChange","wrapperClassName","rest","_objectWithoutPropertiesLoose","_excluded","inputRef","handleRef","setShowText","strength","setStrength","setValue","handleChange","e","target","getStrength","_inputRef$current","current","focus","prevState","levels","length","console","warn","className","_extends","endAdornment","Array","map","_","index","key","$strength","$index","align","color"],"sources":["../../../../src/components/Input/InputPassword.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { Input, InputProps } from \"./Input\";\nimport {\n StyledPasswordIndicator,\n StyledPasswordIndicatorWrapper,\n} from \"./Styles\";\nimport { useForkRef } from \"../../utils\";\nimport { IconButton } from \"../IconButton\";\nimport {\n EyeIcon,\n EyeOffIcon,\n EyeOffSmallIcon,\n EyeSmallIcon,\n InfoIcon,\n InfoSmallIcon,\n} from \"../Icons\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Caption1 } from \"../Typography\";\n\nconst transform = {\n biggest: \"big\",\n regular: \"small\",\n big: \"medium\",\n} as const;\n\nexport interface ValidationProps {\n /** Strength calculating function */\n getStrength: (input: string) => 0 | 1 | 2 | 3 | 4;\n /** Array of strength level strings */\n levels: [string, string, string, string, string];\n}\n\nexport interface InputPasswordProps extends Omit<InputProps, \"type\" | \"size\"> {\n /** Input size */\n size?: \"regular\" | \"big\" | \"biggest\";\n /** Renders with shown text */\n show?: boolean;\n /** Removes show/hide control */\n hideControl?: boolean;\n /** Show tooltip text */\n showTooltipText?: string;\n /** Hide tooltip text */\n hideTooltipText?: string;\n /** Validation object */\n validation?: ValidationProps;\n /** Error message tooltip text */\n errorMessage?: string;\n /** Wrapper className */\n wrapperClassName?: string;\n}\n\nconst StypedEyeIconSmall = styled(EyeSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIconSmall = styled(EyeOffSmallIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeIcon = styled(EyeIcon)`\n ${tw`tw-cursor-pointer`}\n`;\n\nconst StypedEyeOffIcon = styled(EyeOffIcon)`\n ${tw`tw-cursor-pointer`}\n`;\nconst StyledInfoIcon = styled(InfoIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInfoSmallIcon = styled(InfoSmallIcon)`\n ${tw`tw-cursor-help tw-fill-alert tw-mr-1`}\n`;\n\nconst StyledInputPasswordWrapper = styled.div`\n width: fit-content;\n display: flex;\n flex-direction: column;\n`;\n\ninterface InputPasswordAdornmentProps {\n invalid?: boolean;\n errorMessage?: string;\n size: \"regular\" | \"big\" | \"biggest\";\n hideControl?: boolean;\n showText: boolean;\n hideTooltipText: string;\n showTooltipText: string;\n disabled?: boolean;\n toggleShow?: () => void;\n}\n\nconst InputPasswordAdornment = ({\n invalid,\n errorMessage,\n size,\n hideControl,\n showText,\n hideTooltipText,\n showTooltipText,\n disabled,\n toggleShow,\n}: InputPasswordAdornmentProps) => (\n <>\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? <StyledInfoSmallIcon /> : <StyledInfoIcon />}\n </Tooltip>\n )}\n {!hideControl && (\n <Tooltip title={showText ? hideTooltipText : showTooltipText}>\n <IconButton\n variant=\"text gray\"\n type=\"button\"\n size={transform[size] as \"big\" | \"small\" | \"medium\"}\n disabled={disabled}\n onClick={toggleShow}\n style={{ flexShrink: 0 }}\n >\n {showText ? (\n size === \"regular\" ? (\n <StypedEyeOffIconSmall />\n ) : (\n <StypedEyeOffIcon />\n )\n ) : size === \"regular\" ? (\n <StypedEyeIconSmall />\n ) : (\n <StypedEyeIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </>\n);\n\nexport const InputPassword = forwardRef<HTMLInputElement, InputPasswordProps>(\n (\n {\n size = \"regular\",\n disabled,\n show = false,\n hideControl,\n showTooltipText = \"Show\",\n hideTooltipText = \"Hide\",\n value: defaultValue = \"\",\n validation,\n errorMessage,\n invalid,\n onChange,\n wrapperClassName,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const [showText, setShowText] = useState(show);\n const [strength, setStrength] = useState(0);\n const [value, setValue] = useState(() => defaultValue as string);\n\n const handleChange = useCallback(\n (e) => {\n setValue(e.target.value);\n typeof validation?.getStrength === \"function\" &&\n setStrength(validation.getStrength(e.target.value));\n typeof onChange === \"function\" && onChange(e.target.value);\n },\n [onChange, validation]\n );\n\n const toggleShow = useCallback(() => {\n inputRef.current?.focus();\n setShowText((prevState) => !prevState);\n }, []);\n\n useEffect(() => {\n setShowText(show);\n }, [show]);\n\n if (\n validation?.levels &&\n validation?.getStrength &&\n typeof validation?.getStrength === \"function\"\n ) {\n if (validation.levels.length !== 5) {\n console.warn(\"Levels length must be exactly 5.\");\n }\n if (typeof validation.getStrength(\"test\") !== \"number\") {\n console.warn(\n \"getStrength must be a function that accepts a string and returns a number.\"\n );\n }\n }\n\n return (\n <StyledInputPasswordWrapper className={wrapperClassName}>\n <Input\n {...rest}\n ref={handleRef}\n size={size}\n value={value}\n disabled={disabled}\n type={showText ? \"text\" : \"password\"}\n onChange={handleChange}\n invalid={invalid}\n data-testid=\"InputPassword\"\n endAdornment={\n <InputPasswordAdornment\n invalid={invalid}\n errorMessage={errorMessage}\n size={size}\n hideControl={hideControl}\n showText={showText}\n hideTooltipText={hideTooltipText}\n showTooltipText={showTooltipText}\n disabled={disabled}\n toggleShow={toggleShow}\n />\n }\n />\n {validation?.levels?.length === 5 &&\n typeof validation?.getStrength === \"function\" &&\n typeof validation?.getStrength(\"test\") === \"number\" && (\n <>\n <StyledPasswordIndicatorWrapper>\n {[...Array(4)].map((_, index) => (\n <StyledPasswordIndicator\n key={index}\n $strength={strength}\n $index={index}\n data-testid={strength >= index + 1 ? \"active\" : \"\"}\n />\n ))}\n </StyledPasswordIndicatorWrapper>\n <Caption1 align=\"right\" color=\"tertiary\">\n {validation.levels[strength]}\n </Caption1>\n </>\n )}\n </StyledInputPasswordWrapper>\n );\n }\n);\n\nInputPassword.displayName = \"InputPassword\";\n"],"mappings":"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","ignoreList":[]}
|
package/dist/index.js
CHANGED
|
@@ -18863,7 +18863,7 @@
|
|
|
18863
18863
|
});
|
|
18864
18864
|
InputCurrency.displayName = "InputCurrency";
|
|
18865
18865
|
|
|
18866
|
-
var _excluded$I = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange"];
|
|
18866
|
+
var _excluded$I = ["size", "disabled", "show", "hideControl", "showTooltipText", "hideTooltipText", "value", "validation", "errorMessage", "invalid", "onChange", "wrapperClassName"];
|
|
18867
18867
|
var transform = {
|
|
18868
18868
|
biggest: "big",
|
|
18869
18869
|
regular: "small",
|
|
@@ -18956,6 +18956,7 @@
|
|
|
18956
18956
|
errorMessage = _ref2.errorMessage,
|
|
18957
18957
|
invalid = _ref2.invalid,
|
|
18958
18958
|
onChange = _ref2.onChange,
|
|
18959
|
+
wrapperClassName = _ref2.wrapperClassName,
|
|
18959
18960
|
rest = _objectWithoutProperties(_ref2, _excluded$I);
|
|
18960
18961
|
var inputRef = React.useRef(null);
|
|
18961
18962
|
var handleRef = useForkRef(ref, inputRef);
|
|
@@ -18996,7 +18997,9 @@
|
|
|
18996
18997
|
console.warn("getStrength must be a function that accepts a string and returns a number.");
|
|
18997
18998
|
}
|
|
18998
18999
|
}
|
|
18999
|
-
return /*#__PURE__*/React__default["default"].createElement(StyledInputPasswordWrapper,
|
|
19000
|
+
return /*#__PURE__*/React__default["default"].createElement(StyledInputPasswordWrapper, {
|
|
19001
|
+
className: wrapperClassName
|
|
19002
|
+
}, /*#__PURE__*/React__default["default"].createElement(Input, _extends({}, rest, {
|
|
19000
19003
|
ref: handleRef,
|
|
19001
19004
|
size: size,
|
|
19002
19005
|
value: value,
|
|
@@ -22860,6 +22863,8 @@
|
|
|
22860
22863
|
e.target.blur();
|
|
22861
22864
|
}
|
|
22862
22865
|
if (e.key === "Escape") {
|
|
22866
|
+
e.preventDefault();
|
|
22867
|
+
e.stopPropagation();
|
|
22863
22868
|
escapeRef.current = true;
|
|
22864
22869
|
e.target.blur();
|
|
22865
22870
|
typeof onCancel === "function" && onCancel(e);
|