@activecollab/components 2.0.51 → 2.0.53

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.
@@ -149,6 +149,14 @@ var InputPassword = exports.InputPassword = /*#__PURE__*/(0, _react.forwardRef)(
149
149
  (0, _react.useEffect)(function () {
150
150
  setShowText(show);
151
151
  }, [show]);
152
+ if (validation !== null && validation !== void 0 && validation.levels && validation !== null && validation !== void 0 && validation.getStrength && typeof (validation === null || validation === void 0 ? void 0 : validation.getStrength) === "function") {
153
+ if (validation.levels.length !== 5) {
154
+ console.warn("Levels length must be exactly 5.");
155
+ }
156
+ if (typeof validation.getStrength("test") !== "number") {
157
+ console.warn("getStrength must be a function that accepts a string and returns a number.");
158
+ }
159
+ }
152
160
  return /*#__PURE__*/_react.default.createElement(StyledInputPasswordWrapper, null, /*#__PURE__*/_react.default.createElement(_Input.Input, _extends({}, rest, {
153
161
  ref: handleRef,
154
162
  size: size,
@@ -1 +1 @@
1
- {"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","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","_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","getStrength","_inputRef$current","current","focus","prevState","useEffect","Input","endAdornment","levels","StyledPasswordIndicatorWrapper","map","_","index","StyledPasswordIndicator","$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 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 <>\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":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAIA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAQA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AAAyC,IAAAU,SAAA;AAAA,SAAAR,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAY,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAjB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAAA,SAAAY,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAL,CAAA,MAAAA,CAAA,GAAAM,SAAA,CAAAC,MAAA,EAAAP,CAAA,UAAAQ,MAAA,GAAAF,SAAA,CAAAN,CAAA,YAAAS,GAAA,IAAAD,MAAA,QAAAf,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAS,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAAA,SAAAK,eAAAC,GAAA,EAAAZ,CAAA,WAAAa,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAZ,CAAA,KAAAe,2BAAA,CAAAH,GAAA,EAAAZ,CAAA,KAAAgB,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAA7B,CAAA,GAAAG,MAAA,CAAAI,SAAA,CAAAwB,QAAA,CAAAtB,IAAA,CAAAmB,CAAA,EAAAI,KAAA,aAAAhC,CAAA,iBAAA4B,CAAA,CAAAK,WAAA,EAAAjC,CAAA,GAAA4B,CAAA,CAAAK,WAAA,CAAAC,IAAA,MAAAlC,CAAA,cAAAA,CAAA,mBAAAmC,KAAA,CAAAC,IAAA,CAAAR,CAAA,OAAA5B,CAAA,+DAAAqC,IAAA,CAAArC,CAAA,UAAA8B,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAR,GAAA,EAAAgB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAhB,GAAA,CAAAL,MAAA,EAAAqB,GAAA,GAAAhB,GAAA,CAAAL,MAAA,WAAAP,CAAA,MAAA6B,IAAA,OAAAJ,KAAA,CAAAG,GAAA,GAAA5B,CAAA,GAAA4B,GAAA,EAAA5B,CAAA,IAAA6B,IAAA,CAAA7B,CAAA,IAAAY,GAAA,CAAAZ,CAAA,UAAA6B,IAAA;AAAA,SAAAf,sBAAA5B,CAAA,EAAA4C,CAAA,QAAA3C,CAAA,WAAAD,CAAA,gCAAA6C,MAAA,IAAA7C,CAAA,CAAA6C,MAAA,CAAAC,QAAA,KAAA9C,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAM,CAAA,EAAAU,CAAA,EAAAJ,CAAA,EAAAJ,CAAA,OAAAyC,CAAA,OAAAf,CAAA,iBAAAlB,CAAA,IAAAb,CAAA,GAAAA,CAAA,CAAAY,IAAA,CAAAb,CAAA,GAAAgD,IAAA,QAAAJ,CAAA,QAAArC,MAAA,CAAAN,CAAA,MAAAA,CAAA,UAAA8C,CAAA,uBAAAA,CAAA,IAAAjD,CAAA,GAAAgB,CAAA,CAAAD,IAAA,CAAAZ,CAAA,GAAAgD,IAAA,MAAA3C,CAAA,CAAA4C,IAAA,CAAApD,CAAA,CAAAqD,KAAA,GAAA7C,CAAA,CAAAe,MAAA,KAAAuB,CAAA,GAAAG,CAAA,iBAAA/C,CAAA,IAAAgC,CAAA,OAAA5B,CAAA,GAAAJ,CAAA,yBAAA+C,CAAA,YAAA9C,CAAA,CAAAmD,MAAA,KAAA1C,CAAA,GAAAT,CAAA,CAAAmD,MAAA,IAAA7C,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAsB,CAAA,QAAA5B,CAAA,aAAAE,CAAA;AAAA,SAAAqB,gBAAAD,GAAA,QAAAa,KAAA,CAAAc,OAAA,CAAA3B,GAAA,UAAAA,GAAA;AAAA,SAAA4B,yBAAAhC,MAAA,EAAAiC,QAAA,QAAAjC,MAAA,yBAAAH,MAAA,GAAAqC,6BAAA,CAAAlC,MAAA,EAAAiC,QAAA,OAAAhC,GAAA,EAAAT,CAAA,MAAAP,MAAA,CAAAkD,qBAAA,QAAAC,gBAAA,GAAAnD,MAAA,CAAAkD,qBAAA,CAAAnC,MAAA,QAAAR,CAAA,MAAAA,CAAA,GAAA4C,gBAAA,CAAArC,MAAA,EAAAP,CAAA,MAAAS,GAAA,GAAAmC,gBAAA,CAAA5C,CAAA,OAAAyC,QAAA,CAAAI,OAAA,CAAApC,GAAA,uBAAAhB,MAAA,CAAAI,SAAA,CAAAiD,oBAAA,CAAA/C,IAAA,CAAAS,MAAA,EAAAC,GAAA,aAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAJ,MAAA;AAAA,SAAAqC,8BAAAlC,MAAA,EAAAiC,QAAA,QAAAjC,MAAA,yBAAAH,MAAA,WAAA0C,UAAA,GAAAtD,MAAA,CAAAuD,IAAA,CAAAxC,MAAA,OAAAC,GAAA,EAAAT,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAA+C,UAAA,CAAAxC,MAAA,EAAAP,CAAA,MAAAS,GAAA,GAAAsC,UAAA,CAAA/C,CAAA,OAAAyC,QAAA,CAAAI,OAAA,CAAApC,GAAA,kBAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAJ,MAAA;AAEzC,IAAM4C,SAAS,GAAG;EAChBC,OAAO,EAAE,KAAK;EACdC,OAAO,EAAE,OAAO;EAChBC,GAAG,EAAE;AACP,CAAU;AA0BV,IAAMC,kBAAkB,GAAG,IAAAC,yBAAM,EAACC,mBAAY,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACzC;EAAA;AAAkB,CAAC,CACxB;AAED,IAAMC,qBAAqB,GAAG,IAAAL,yBAAM,EAACM,sBAAe,CAAC,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC/C;EAAA;AAAkB,CAAC,CACxB;AAED,IAAMG,aAAa,GAAG,IAAAP,yBAAM,EAACQ,cAAO,CAAC,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC/B;EAAA;AAAkB,CAAC,CACxB;AAED,IAAMK,gBAAgB,GAAG,IAAAT,yBAAM,EAACU,iBAAU,CAAC,CAAAR,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACrC;EAAA;AAAkB,CAAC,CACxB;AACD,IAAMO,cAAc,GAAG,IAAAX,yBAAM,EAACY,eAAQ,CAAC,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACjC;EAAA;EAAA;EAAA;AAAqC,CAAC,CAC3C;AAED,IAAMS,mBAAmB,GAAG,IAAAb,yBAAM,EAACc,oBAAa,CAAC,CAAAZ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC3C;EAAA;EAAA;EAAA;AAAqC,CAAC,CAC3C;AAED,IAAMW,0BAA0B,GAAGf,yBAAM,CAACgB,GAAG,CAAAd,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,6DAI5C;AAcD,IAAMa,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAC,IAAA;EAAA,IAC1BC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IACPC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;IACXC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRC,eAAe,GAAAN,IAAA,CAAfM,eAAe;IACfC,eAAe,GAAAP,IAAA,CAAfO,eAAe;IACfC,QAAQ,GAAAR,IAAA,CAARQ,QAAQ;IACRC,UAAU,GAAAT,IAAA,CAAVS,UAAU;EAAA,oBAEVlH,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAAnH,MAAA,CAAAe,OAAA,CAAAqG,QAAA,QACGV,OAAO,IAAIC,YAAY,iBACtB3G,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACzG,QAAA,CAAA2G,OAAO;IAACC,KAAK,EAAEX;EAAa,GAC1BC,IAAI,KAAK,SAAS,gBAAG5G,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACf,mBAAmB,MAAE,CAAC,gBAAGpG,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACjB,cAAc,MAAE,CAC1D,CACV,EACA,CAACW,WAAW,iBACX7G,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACzG,QAAA,CAAA2G,OAAO;IAACC,KAAK,EAAER,QAAQ,GAAGC,eAAe,GAAGC;EAAgB,gBAC3DhH,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAC3G,WAAA,CAAA+G,UAAU;IACTC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,QAAQ;IACbb,IAAI,EAAE1B,SAAS,CAAC0B,IAAI,CAAgC;IACpDK,QAAQ,EAAEA,QAAS;IACnBS,OAAO,EAAER,UAAW;IACpBS,KAAK,EAAE;MAAEC,UAAU,EAAE;IAAE;EAAE,GAExBd,QAAQ,GACPF,IAAI,KAAK,SAAS,gBAChB5G,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACvB,qBAAqB,MAAE,CAAC,gBAEzB5F,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACnB,gBAAgB,MAAE,CACpB,GACCY,IAAI,KAAK,SAAS,gBACpB5G,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAC7B,kBAAkB,MAAE,CAAC,gBAEtBtF,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACrB,aAAa,MAAE,CAER,CACL,CAEX,CAAC;AAAA,CACJ;AAEM,IAAM+B,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAG,IAAAE,iBAAU,EACrC,UAAAC,KAAA,EAeEC,GAAG,EACA;EAAA,IAAAC,UAAA,GAAAF,KAAA,CAdDpB,IAAI;IAAJA,IAAI,GAAAsB,UAAA,cAAG,SAAS,GAAAA,UAAA;IAChBjB,QAAQ,GAAAe,KAAA,CAARf,QAAQ;IAAAkB,UAAA,GAAAH,KAAA,CACRI,IAAI;IAAJA,IAAI,GAAAD,UAAA,cAAG,KAAK,GAAAA,UAAA;IACZtB,WAAW,GAAAmB,KAAA,CAAXnB,WAAW;IAAAwB,qBAAA,GAAAL,KAAA,CACXhB,eAAe;IAAfA,eAAe,GAAAqB,qBAAA,cAAG,MAAM,GAAAA,qBAAA;IAAAC,qBAAA,GAAAN,KAAA,CACxBjB,eAAe;IAAfA,eAAe,GAAAuB,qBAAA,cAAG,MAAM,GAAAA,qBAAA;IAAAC,WAAA,GAAAP,KAAA,CACxB1D,KAAK;IAAEkE,YAAY,GAAAD,WAAA,cAAG,EAAE,GAAAA,WAAA;IACxBE,UAAU,GAAAT,KAAA,CAAVS,UAAU;IACV9B,YAAY,GAAAqB,KAAA,CAAZrB,YAAY;IACZD,OAAO,GAAAsB,KAAA,CAAPtB,OAAO;IACPgC,QAAQ,GAAAV,KAAA,CAARU,QAAQ;IACLC,IAAI,GAAAlE,wBAAA,CAAAuD,KAAA,EAAApH,SAAA;EAIT,IAAMgI,QAAQ,GAAG,IAAAC,aAAM,EAA0B,IAAI,CAAC;EACtD,IAAMC,SAAS,GAAG,IAAAC,iBAAU,EAACd,GAAG,EAAEW,QAAQ,CAAC;EAE3C,IAAAI,SAAA,GAAgC,IAAAC,eAAQ,EAACb,IAAI,CAAC;IAAAc,UAAA,GAAAtG,cAAA,CAAAoG,SAAA;IAAvClC,QAAQ,GAAAoC,UAAA;IAAEC,WAAW,GAAAD,UAAA;EAC5B,IAAAE,UAAA,GAAgC,IAAAH,eAAQ,EAAC,CAAC,CAAC;IAAAI,UAAA,GAAAzG,cAAA,CAAAwG,UAAA;IAApCE,QAAQ,GAAAD,UAAA;IAAEE,WAAW,GAAAF,UAAA;EAC5B,IAAAG,UAAA,GAA0B,IAAAP,eAAQ,EAAC;MAAA,OAAMT,YAAY;IAAA,CAAU,CAAC;IAAAiB,UAAA,GAAA7G,cAAA,CAAA4G,UAAA;IAAzDlF,KAAK,GAAAmF,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EAEtB,IAAME,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAAC3I,CAAC,EAAK;IACLyI,QAAQ,CAACzI,CAAC,CAACqB,MAAM,CAACgC,KAAK,CAAC;IACxB,QAAOmE,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEoB,WAAW,MAAK,UAAU,IAC3CN,WAAW,CAACd,UAAU,CAACoB,WAAW,CAAC5I,CAAC,CAACqB,MAAM,CAACgC,KAAK,CAAC,CAAC;IACrD,OAAOoE,QAAQ,KAAK,UAAU,IAAIA,QAAQ,CAACzH,CAAC,CAACqB,MAAM,CAACgC,KAAK,CAAC;EAC5D,CAAC,EACD,CAACoE,QAAQ,EAAED,UAAU,CACvB,CAAC;EAED,IAAMvB,UAAU,GAAG,IAAA0C,kBAAW,EAAC,YAAM;IAAA,IAAAE,iBAAA;IACnC,CAAAA,iBAAA,GAAAlB,QAAQ,CAACmB,OAAO,cAAAD,iBAAA,eAAhBA,iBAAA,CAAkBE,KAAK,CAAC,CAAC;IACzBb,WAAW,CAAC,UAACc,SAAS;MAAA,OAAK,CAACA,SAAS;IAAA,EAAC;EACxC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAC,gBAAS,EAAC,YAAM;IACdf,WAAW,CAACf,IAAI,CAAC;EACnB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,oBACEpI,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACb,0BAA0B,qBACzBtG,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAC9G,MAAA,CAAA8J,KAAK,EAAAhI,QAAA,KACAwG,IAAI;IACRV,GAAG,EAAEa,SAAU;IACflC,IAAI,EAAEA,IAAK;IACXtC,KAAK,EAAEA,KAAM;IACb2C,QAAQ,EAAEA,QAAS;IACnBQ,IAAI,EAAEX,QAAQ,GAAG,MAAM,GAAG,UAAW;IACrC4B,QAAQ,EAAEiB,YAAa;IACvBjD,OAAO,EAAEA,OAAQ;IACjB,eAAY,eAAe;IAC3B0D,YAAY,eACVpK,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACX,sBAAsB;MACrBE,OAAO,EAAEA,OAAQ;MACjBC,YAAY,EAAEA,YAAa;MAC3BC,IAAI,EAAEA,IAAK;MACXC,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MACnBC,eAAe,EAAEA,eAAgB;MACjCC,eAAe,EAAEA,eAAgB;MACjCC,QAAQ,EAAEA,QAAS;MACnBC,UAAU,EAAEA;IAAW,CACxB;EACF,EACF,CAAC,EACD,CAAAuB,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE4B,MAAM,CAAC7H,MAAM,MAAK,CAAC,IAC9B,OAAOiG,UAAU,CAACoB,WAAW,KAAK,UAAU,iBAC1C7J,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAAnH,MAAA,CAAAe,OAAA,CAAAqG,QAAA,qBACEpH,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAC7G,OAAA,CAAAgK,8BAA8B,QAC5B,CAAC,GAAG5G,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC6G,GAAG,CAAC,UAACC,CAAC,EAAEC,KAAK;IAAA,oBAC1BzK,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAAC7G,OAAA,CAAAoK,uBAAuB;MACtBhI,GAAG,EAAE+H,KAAM;MACXE,SAAS,EAAErB,QAAS;MACpBsB,MAAM,EAAEH,KAAM;MACd,eAAanB,QAAQ,IAAImB,KAAK,GAAG,CAAC,GAAG,QAAQ,GAAG;IAAG,CACpD,CAAC;EAAA,CACH,CAC6B,CAAC,eACjCzK,MAAA,CAAAe,OAAA,CAAAoG,aAAA,CAACxG,WAAA,CAAAkK,QAAQ;IAACC,KAAK,EAAC,OAAO;IAACC,KAAK,EAAC;EAAU,GACrCtC,UAAU,CAAC4B,MAAM,CAACf,QAAQ,CACnB,CACV,CAEoB,CAAC;AAEjC,CACF,CAAC;AAEDzB,aAAa,CAACnC,WAAW,GAAG,eAAe"}
1
+ {"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","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","_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","getStrength","_inputRef$current","current","focus","prevState","useEffect","levels","console","warn","Input","endAdornment","StyledPasswordIndicatorWrapper","map","_","index","StyledPasswordIndicator","$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 <>\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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"}
@@ -184,7 +184,7 @@ var SelectDate = exports.SelectDate = function SelectDate(_ref) {
184
184
  setShowDatePicker(defaultShowDatePicker);
185
185
  }, [defaultShowDatePicker]);
186
186
  (0, _react.useEffect)(function () {
187
- modifiedDates && setNewDates(modifiedDates);
187
+ setNewDates(modifiedDates);
188
188
  }, [modifiedDates]);
189
189
  (0, _react.useEffect)(function () {
190
190
  typeof onToggleDatePicker === "function" && onToggleDatePicker(showDatePicker);
@@ -1 +1 @@
1
- {"version":3,"file":"SelectDate.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_moment","_DatePickerForm","_SelectDateTarget","_Styles","_dateUtils","_Localization","_Menu","_Tooltip","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","getUtcTimestampFromDate","date","moment","utc","getFullYear","getMonth","getDate","unix","isDayInRange","day","data","repeating","Date","to","SelectDate","exports","_ref","_ref$changeMode","changeMode","mode","_ref$trigger","trigger","labelType","_ref$saveButtonText","saveButtonText","_ref$cancelButtonText","cancelButtonText","_ref$clearButtonText","clearButtonText","_ref$modalHeaderText","modalHeaderText","_ref$modalDiscardMess","modalDiscardMessage","_ref$modalDiscardBtnT","modalDiscardBtnText","_ref$modalCancelBtnTe","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","_ref$required","required","dateRequired","_ref$defaultTimezoneA","defaultTimezoneAware","_ref$longDateFormat","longDateFormat","_ref$defaultShowDateP","defaultShowDatePicker","_ref$firstDayOfWeek","firstDayOfWeek","selectedDays","_ref$selectionMode","selectionMode","menuClassName","targetClassName","icon","_ref$defaultLabelText","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","passedDateFormat","dateFormat","defaultMonth","_ref$daysToModify","daysToModify","_ref$weekends","weekends","_ref$weekendLabel","weekendLabel","_ref$nonWorkingDaysOf","nonWorkingDaysOfWeek","_ref$nonWorkingDaysOf2","nonWorkingDaysOfWeekLabel","_ref$weekendIsSelecta","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","_useState","useState","_useState2","timezoneAware","setTimezoneAware","localization","useLocalization","labelText","useMemo","endDate","local","startDate","formattedEndDate","formatDate","formattedStartDate","modifiedDates","toDate","offsetFrom","utcOffset","offsetTo","handleModifiedSave","useCallback","selectedDates","undefined","getDefaultMonth","_useState3","_useState4","month","setMonth","handleMonthChange","_useState5","_useState6","newDates","setNewDates","_useState7","_useState8","showDiscardModal","setShowDiscardModal","_useState9","_useState10","showDatePicker","setShowDatePicker","disabledSaveButton","useEffect","handleSave","handleChange","dates","handleBeforeCloseMenu","result","selectedDaysFrom","selectedDaysTo","newDatesFrom","newDatesTo","format","handleClose","handleCancel","event","preventDefault","handleShowDatePicker","handleCloseDiscardModal","handleClear","handleSaveDiscardModal","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","some","weekend","getDay","nonWorkingDay","nonWorkingDays","day_disabled","toJSON","dayOfWeek","renderDay","props","titles","includes","forEach","title","child","createElement","className","key","map","index","Tooltip","renderDatePickerForm","DatePickerForm","onMonthChange","onChange","onClear","renderTargetEl","SelectDateTarget","forceHideTooltip","active","StyledSelectDateButton","classnames","StyledSelectDate","Menu","target","open","onOpen","onBeforeClose","onClose","StyledConfirmDialog","onConfirm","dialogTitle","dialogContent","cancelBtnText","confirmBtnText","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, {\n ElementType,\n FC,\n useCallback,\n useEffect,\n useMemo,\n useState,\n CSSProperties,\n} from \"react\";\nimport { DayModifiers, DayProps } from \"react-day-picker\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport moment from \"moment\";\n\nimport { DatePickerForm } from \"./DatePickerForm\";\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport {\n StyledConfirmDialog,\n StyledSelectDate,\n StyledSelectDateButton,\n} from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport { useLocalization } from \"../Localization\";\nimport { Menu } from \"../Menu/Menu\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nconst getUtcTimestampFromDate = (date: Date): number => {\n return moment\n .utc([date.getFullYear(), date.getMonth(), date.getDate()])\n .unix();\n};\n\nconst isDayInRange = (day: Date, data: DaysToModify): boolean => {\n if (data.repeating) {\n const from = new Date(\n day.getFullYear(),\n data.from.getMonth(),\n data.from.getDate()\n );\n const to = new Date(\n day.getFullYear(),\n data.to.getMonth(),\n data.to.getDate()\n );\n return day >= from && day <= to;\n }\n\n return day >= data.from && day <= data.to;\n};\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Date, modifiers: DayModifiers) => void;\n /** Save changes in atomic mode */\n onSave?: (dates?: { from: number; to: number }) => void;\n /** On cancel closes datepicker or opens disard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: { from: number; to: number };\n /** Set month */\n defaultMonth?: Date;\n /** Set selection range */\n selectionMode?: string;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set is date required */\n defaultTimezoneAware?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Date;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n defaultTimezoneAware = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat: passedDateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n}) => {\n const [timezoneAware, setTimezoneAware] = useState(defaultTimezoneAware);\n const localization = useLocalization();\n const dateFormat = passedDateFormat\n ? passedDateFormat\n : localization.dateFormat;\n\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const endDate = timezoneAware\n ? moment.unix(selectedDays.to).local()\n : moment.unix(selectedDays.to).utc();\n\n const startDate = timezoneAware\n ? moment.unix(selectedDays.from).local()\n : moment.unix(selectedDays.from).utc();\n\n const formattedEndDate = formatDate(endDate, dateFormat, longDateFormat);\n const formattedStartDate = formatDate(\n startDate,\n dateFormat,\n longDateFormat\n );\n\n if (selectedDays.from === selectedDays.to) {\n return formattedEndDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [\n selectedDays,\n dateFormat,\n timezoneAware,\n defaultLabelText,\n longDateFormat,\n ]);\n\n const modifiedDates = useMemo(() => {\n if (\n typeof selectedDays === \"object\" &&\n !!selectedDays.from &&\n !!selectedDays.to\n ) {\n if (timezoneAware) {\n return {\n from: moment.unix(selectedDays.from).toDate(),\n to: moment.unix(selectedDays.to).toDate(),\n };\n }\n const offsetFrom = moment.unix(selectedDays.from).utcOffset() * 60;\n const offsetTo = moment.unix(selectedDays.to).utcOffset() * 60;\n return {\n from: new Date((selectedDays.from - offsetFrom) * 1000),\n to: new Date((selectedDays.to - offsetTo) * 1000),\n };\n }\n }, [selectedDays, timezoneAware]);\n\n const handleModifiedSave = useCallback(\n (selectedDates) => {\n setTimezoneAware(false);\n if (typeof onSave === \"function\") {\n if (\n typeof selectedDates === \"object\" &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"from\") &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"to\")\n ) {\n onSave({\n from: getUtcTimestampFromDate(selectedDates.from),\n to: getUtcTimestampFromDate(selectedDates.to),\n });\n } else {\n onSave(undefined);\n }\n }\n },\n [onSave]\n );\n\n const getDefaultMonth = useCallback(() => {\n let date = new Date();\n\n if (typeof selectedDays === \"object\" && !!selectedDays.from) {\n date = timezoneAware\n ? new Date(selectedDays.from * 1000)\n : new Date(\n (selectedDays.from -\n moment.unix(selectedDays.from).utcOffset() * 60) *\n 1000\n );\n } else if (defaultMonth) {\n date = defaultMonth;\n }\n\n // forcing second day in month\n return new Date(date.getFullYear(), date.getMonth(), 2);\n }, [defaultMonth, selectedDays, timezoneAware]);\n\n const [month, setMonth] = useState(getDefaultMonth);\n\n const handleMonthChange = useCallback(\n (month) => {\n setMonth(month);\n },\n [setMonth]\n );\n\n const [newDates, setNewDates] = useState(modifiedDates);\n const [showDiscardModal, setShowDiscardModal] = useState(false);\n const [showDatePicker, setShowDatePicker] = useState(defaultShowDatePicker);\n\n const disabledSaveButton = useMemo(() => {\n return (\n modifiedDates?.from === newDates?.from &&\n modifiedDates?.to === newDates?.to\n );\n }, [modifiedDates, newDates]);\n\n useEffect(() => {\n setShowDatePicker(defaultShowDatePicker);\n }, [defaultShowDatePicker]);\n\n useEffect(() => {\n modifiedDates && setNewDates(modifiedDates);\n }, [modifiedDates]);\n\n useEffect(() => {\n typeof onToggleDatePicker === \"function\" &&\n onToggleDatePicker(showDatePicker);\n }, [showDatePicker, onToggleDatePicker]);\n\n useEffect(() => {\n if (!showDatePicker) {\n setMonth(getDefaultMonth());\n }\n }, [showDatePicker, getDefaultMonth]);\n\n const handleSave = useCallback(() => {\n handleModifiedSave(newDates);\n setShowDatePicker(false);\n }, [newDates, handleModifiedSave]);\n\n const handleChange = useCallback(\n (dates) => {\n if (mode !== \"atomic\") {\n handleModifiedSave(dates);\n }\n setNewDates(dates);\n },\n [mode, handleModifiedSave]\n );\n\n const handleBeforeCloseMenu = useCallback(() => {\n let result = true;\n\n if ((modifiedDates && !newDates) || (!modifiedDates && newDates)) {\n result = false;\n }\n\n const selectedDaysFrom = modifiedDates?.from;\n const selectedDaysTo = modifiedDates?.to;\n const newDatesFrom = newDates?.from;\n const newDatesTo = newDates?.to;\n\n if (\n selectedDaysFrom &&\n newDatesFrom &&\n selectedDaysTo &&\n newDatesTo &&\n (moment(selectedDaysFrom).format(\"DD-MM-YYYY\") !==\n moment(newDatesFrom).format(\"DD-MM-YYYY\") ||\n moment(selectedDaysTo).format(\"DD-MM-YYYY\") !==\n moment(newDatesTo).format(\"DD-MM-YYYY\"))\n ) {\n result = false;\n }\n\n if (!result) {\n setShowDiscardModal(true);\n }\n\n return result;\n }, [modifiedDates, newDates]);\n\n const handleClose = useCallback(() => {\n if (mode !== \"atomic\" || handleBeforeCloseMenu()) {\n typeof onCancel === \"function\" && onCancel();\n setShowDatePicker(false);\n }\n }, [mode, onCancel, handleBeforeCloseMenu]);\n\n const handleCancel = useCallback(\n (event) => {\n event && event.preventDefault();\n return handleClose();\n },\n [handleClose]\n );\n\n const handleShowDatePicker = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n }, [showDatePicker]);\n\n const handleCloseDiscardModal = useCallback(() => {\n setShowDiscardModal(false);\n }, []);\n\n const handleClear = useCallback(() => {\n if (!dateRequired) {\n setNewDates(undefined);\n if (mode === \"instant\") {\n handleModifiedSave(undefined);\n }\n }\n }, [mode, dateRequired, handleModifiedSave]);\n\n const handleSaveDiscardModal = useCallback(() => {\n setNewDates(modifiedDates);\n setShowDiscardModal(false);\n setShowDatePicker(false);\n }, [modifiedDates]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n return {\n userAvailability: (day: Date): boolean => {\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return userAvailabilities.some((data) =>\n isDayInRange(currentDay, data)\n );\n },\n weekend: (day: Date): boolean => {\n return weekends.some((value) => day.getDay() === value);\n },\n nonWorkingDay: (day: Date): boolean => {\n // return true if day is weekend day\n if (weekends.some((value) => value === day.getDay())) {\n return true;\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return nonWorkingDays.some((data) => isDayInRange(currentDay, data));\n },\n day_disabled: (day: Date): boolean => {\n if (disableDaysBefore) {\n if (\n day.toJSON().slice(0, 10) < disableDaysBefore.toJSON().slice(0, 10)\n ) {\n return true;\n }\n }\n // return true if day is weekend day\n if (\n !weekendIsSelectable &&\n weekends.some((value) => value === day.getDay())\n ) {\n return true;\n }\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return globalDaysOff.some((data) => isDayInRange(currentDay, data));\n },\n nonWorkingDaysOfWeek: {\n dayOfWeek: nonWorkingDaysOfWeek,\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n weekends,\n disableDaysBefore,\n weekendIsSelectable,\n ]);\n\n const renderDay = useCallback(\n (props: DayProps): JSX.Element | null => {\n const titles: string[] = [];\n if (weekends.some((value) => props.date.getDay() === value)) {\n titles.push(weekendLabel);\n }\n\n if (nonWorkingDaysOfWeek.includes(props.date.getDay())) {\n titles.push(nonWorkingDaysOfWeekLabel);\n }\n\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n props.date.getFullYear(),\n props.date.getMonth(),\n props.date.getDate()\n );\n\n daysToModify.forEach((data) => {\n if (isDayInRange(currentDay, data)) {\n titles.push(data.title);\n }\n });\n const child = (\n <div className=\"c-DayPicker-Day-Number\">{props.date.getDate()}</div>\n );\n\n if (titles.length) {\n const title = (\n <div key={`title-wrapper-${props.date.getDate()}`}>\n {titles.map((title: string, index: number) => (\n <div key={`title-text-${index}`}>{title}</div>\n ))}\n </div>\n );\n\n return (\n <Tooltip\n title={title}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n >\n {child}\n </Tooltip>\n );\n }\n\n return child;\n },\n [\n weekends,\n nonWorkingDaysOfWeek,\n daysToModify,\n weekendLabel,\n nonWorkingDaysOfWeekLabel,\n popperTooltipClassName,\n popperTooltipStyle,\n ]\n );\n\n const renderDatePickerForm = useCallback((): JSX.Element => {\n return (\n <DatePickerForm\n onMonthChange={handleMonthChange}\n month={month}\n mode={mode}\n selectionMode={selectionMode}\n dateRequired={dateRequired}\n selectedDays={newDates}\n firstDayOfWeek={firstDayOfWeek}\n saveButtonText={saveButtonText}\n cancelButtonText={cancelButtonText}\n clearButtonText={clearButtonText}\n onDayClick={onDayClick}\n onSave={handleSave}\n onChange={handleChange}\n onCancel={handleCancel}\n onClear={handleClear}\n disabledSaveButton={disabledSaveButton}\n modifiers={modifiers}\n renderDay={renderDay}\n />\n );\n }, [\n handleMonthChange,\n month,\n mode,\n selectionMode,\n dateRequired,\n newDates,\n firstDayOfWeek,\n saveButtonText,\n cancelButtonText,\n clearButtonText,\n onDayClick,\n handleSave,\n handleChange,\n handleCancel,\n handleClear,\n disabledSaveButton,\n modifiers,\n renderDay,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n forceHideTooltip={showDatePicker}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n active={showDatePicker}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n showDatePicker,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <Menu\n target={renderTargetEl}\n open={showDatePicker}\n onOpen={handleShowDatePicker}\n onBeforeClose={handleBeforeCloseMenu}\n onClose={handleClose}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n backgroundElementClass={backgroundElementClass}\n >\n {renderDatePickerForm()}\n </Menu>\n ) : (\n renderDatePickerForm()\n )}\n {mode === \"atomic\" ? (\n <StyledConfirmDialog\n className=\"modal-select-date\"\n open={showDiscardModal}\n onCancel={handleCloseDiscardModal}\n onConfirm={handleSaveDiscardModal}\n dialogTitle={modalHeaderText}\n dialogContent={modalDiscardMessage}\n cancelBtnText={modalCancelBtnText}\n confirmBtnText={modalDiscardBtnText}\n />\n ) : null}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectDate.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_moment","_DatePickerForm","_SelectDateTarget","_Styles","_dateUtils","_Localization","_Menu","_Tooltip","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","getUtcTimestampFromDate","date","moment","utc","getFullYear","getMonth","getDate","unix","isDayInRange","day","data","repeating","Date","to","SelectDate","exports","_ref","_ref$changeMode","changeMode","mode","_ref$trigger","trigger","labelType","_ref$saveButtonText","saveButtonText","_ref$cancelButtonText","cancelButtonText","_ref$clearButtonText","clearButtonText","_ref$modalHeaderText","modalHeaderText","_ref$modalDiscardMess","modalDiscardMessage","_ref$modalDiscardBtnT","modalDiscardBtnText","_ref$modalCancelBtnTe","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","_ref$required","required","dateRequired","_ref$defaultTimezoneA","defaultTimezoneAware","_ref$longDateFormat","longDateFormat","_ref$defaultShowDateP","defaultShowDatePicker","_ref$firstDayOfWeek","firstDayOfWeek","selectedDays","_ref$selectionMode","selectionMode","menuClassName","targetClassName","icon","_ref$defaultLabelText","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","passedDateFormat","dateFormat","defaultMonth","_ref$daysToModify","daysToModify","_ref$weekends","weekends","_ref$weekendLabel","weekendLabel","_ref$nonWorkingDaysOf","nonWorkingDaysOfWeek","_ref$nonWorkingDaysOf2","nonWorkingDaysOfWeekLabel","_ref$weekendIsSelecta","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","_useState","useState","_useState2","timezoneAware","setTimezoneAware","localization","useLocalization","labelText","useMemo","endDate","local","startDate","formattedEndDate","formatDate","formattedStartDate","modifiedDates","toDate","offsetFrom","utcOffset","offsetTo","handleModifiedSave","useCallback","selectedDates","undefined","getDefaultMonth","_useState3","_useState4","month","setMonth","handleMonthChange","_useState5","_useState6","newDates","setNewDates","_useState7","_useState8","showDiscardModal","setShowDiscardModal","_useState9","_useState10","showDatePicker","setShowDatePicker","disabledSaveButton","useEffect","handleSave","handleChange","dates","handleBeforeCloseMenu","result","selectedDaysFrom","selectedDaysTo","newDatesFrom","newDatesTo","format","handleClose","handleCancel","event","preventDefault","handleShowDatePicker","handleCloseDiscardModal","handleClear","handleSaveDiscardModal","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","some","weekend","getDay","nonWorkingDay","nonWorkingDays","day_disabled","toJSON","dayOfWeek","renderDay","props","titles","includes","forEach","title","child","createElement","className","key","map","index","Tooltip","renderDatePickerForm","DatePickerForm","onMonthChange","onChange","onClear","renderTargetEl","SelectDateTarget","forceHideTooltip","active","StyledSelectDateButton","classnames","StyledSelectDate","Menu","target","open","onOpen","onBeforeClose","onClose","StyledConfirmDialog","onConfirm","dialogTitle","dialogContent","cancelBtnText","confirmBtnText","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, {\n ElementType,\n FC,\n useCallback,\n useEffect,\n useMemo,\n useState,\n CSSProperties,\n} from \"react\";\nimport { DayModifiers, DayProps } from \"react-day-picker\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport moment from \"moment\";\n\nimport { DatePickerForm } from \"./DatePickerForm\";\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport {\n StyledConfirmDialog,\n StyledSelectDate,\n StyledSelectDateButton,\n} from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport { useLocalization } from \"../Localization\";\nimport { Menu } from \"../Menu/Menu\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nconst getUtcTimestampFromDate = (date: Date): number => {\n return moment\n .utc([date.getFullYear(), date.getMonth(), date.getDate()])\n .unix();\n};\n\nconst isDayInRange = (day: Date, data: DaysToModify): boolean => {\n if (data.repeating) {\n const from = new Date(\n day.getFullYear(),\n data.from.getMonth(),\n data.from.getDate()\n );\n const to = new Date(\n day.getFullYear(),\n data.to.getMonth(),\n data.to.getDate()\n );\n return day >= from && day <= to;\n }\n\n return day >= data.from && day <= data.to;\n};\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Date, modifiers: DayModifiers) => void;\n /** Save changes in atomic mode */\n onSave?: (dates?: { from: number; to: number }) => void;\n /** On cancel closes datepicker or opens disard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: { from: number; to: number };\n /** Set month */\n defaultMonth?: Date;\n /** Set selection range */\n selectionMode?: string;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set is date required */\n defaultTimezoneAware?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Date;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n defaultTimezoneAware = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat: passedDateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n}) => {\n const [timezoneAware, setTimezoneAware] = useState(defaultTimezoneAware);\n const localization = useLocalization();\n const dateFormat = passedDateFormat\n ? passedDateFormat\n : localization.dateFormat;\n\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const endDate = timezoneAware\n ? moment.unix(selectedDays.to).local()\n : moment.unix(selectedDays.to).utc();\n\n const startDate = timezoneAware\n ? moment.unix(selectedDays.from).local()\n : moment.unix(selectedDays.from).utc();\n\n const formattedEndDate = formatDate(endDate, dateFormat, longDateFormat);\n const formattedStartDate = formatDate(\n startDate,\n dateFormat,\n longDateFormat\n );\n\n if (selectedDays.from === selectedDays.to) {\n return formattedEndDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [\n selectedDays,\n dateFormat,\n timezoneAware,\n defaultLabelText,\n longDateFormat,\n ]);\n\n const modifiedDates = useMemo(() => {\n if (\n typeof selectedDays === \"object\" &&\n !!selectedDays.from &&\n !!selectedDays.to\n ) {\n if (timezoneAware) {\n return {\n from: moment.unix(selectedDays.from).toDate(),\n to: moment.unix(selectedDays.to).toDate(),\n };\n }\n const offsetFrom = moment.unix(selectedDays.from).utcOffset() * 60;\n const offsetTo = moment.unix(selectedDays.to).utcOffset() * 60;\n return {\n from: new Date((selectedDays.from - offsetFrom) * 1000),\n to: new Date((selectedDays.to - offsetTo) * 1000),\n };\n }\n }, [selectedDays, timezoneAware]);\n\n const handleModifiedSave = useCallback(\n (selectedDates) => {\n setTimezoneAware(false);\n if (typeof onSave === \"function\") {\n if (\n typeof selectedDates === \"object\" &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"from\") &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"to\")\n ) {\n onSave({\n from: getUtcTimestampFromDate(selectedDates.from),\n to: getUtcTimestampFromDate(selectedDates.to),\n });\n } else {\n onSave(undefined);\n }\n }\n },\n [onSave]\n );\n\n const getDefaultMonth = useCallback(() => {\n let date = new Date();\n\n if (typeof selectedDays === \"object\" && !!selectedDays.from) {\n date = timezoneAware\n ? new Date(selectedDays.from * 1000)\n : new Date(\n (selectedDays.from -\n moment.unix(selectedDays.from).utcOffset() * 60) *\n 1000\n );\n } else if (defaultMonth) {\n date = defaultMonth;\n }\n\n // forcing second day in month\n return new Date(date.getFullYear(), date.getMonth(), 2);\n }, [defaultMonth, selectedDays, timezoneAware]);\n\n const [month, setMonth] = useState(getDefaultMonth);\n\n const handleMonthChange = useCallback(\n (month) => {\n setMonth(month);\n },\n [setMonth]\n );\n\n const [newDates, setNewDates] = useState(modifiedDates);\n const [showDiscardModal, setShowDiscardModal] = useState(false);\n const [showDatePicker, setShowDatePicker] = useState(defaultShowDatePicker);\n\n const disabledSaveButton = useMemo(() => {\n return (\n modifiedDates?.from === newDates?.from &&\n modifiedDates?.to === newDates?.to\n );\n }, [modifiedDates, newDates]);\n\n useEffect(() => {\n setShowDatePicker(defaultShowDatePicker);\n }, [defaultShowDatePicker]);\n\n useEffect(() => {\n setNewDates(modifiedDates);\n }, [modifiedDates]);\n\n useEffect(() => {\n typeof onToggleDatePicker === \"function\" &&\n onToggleDatePicker(showDatePicker);\n }, [showDatePicker, onToggleDatePicker]);\n\n useEffect(() => {\n if (!showDatePicker) {\n setMonth(getDefaultMonth());\n }\n }, [showDatePicker, getDefaultMonth]);\n\n const handleSave = useCallback(() => {\n handleModifiedSave(newDates);\n setShowDatePicker(false);\n }, [newDates, handleModifiedSave]);\n\n const handleChange = useCallback(\n (dates) => {\n if (mode !== \"atomic\") {\n handleModifiedSave(dates);\n }\n setNewDates(dates);\n },\n [mode, handleModifiedSave]\n );\n\n const handleBeforeCloseMenu = useCallback(() => {\n let result = true;\n\n if ((modifiedDates && !newDates) || (!modifiedDates && newDates)) {\n result = false;\n }\n\n const selectedDaysFrom = modifiedDates?.from;\n const selectedDaysTo = modifiedDates?.to;\n const newDatesFrom = newDates?.from;\n const newDatesTo = newDates?.to;\n\n if (\n selectedDaysFrom &&\n newDatesFrom &&\n selectedDaysTo &&\n newDatesTo &&\n (moment(selectedDaysFrom).format(\"DD-MM-YYYY\") !==\n moment(newDatesFrom).format(\"DD-MM-YYYY\") ||\n moment(selectedDaysTo).format(\"DD-MM-YYYY\") !==\n moment(newDatesTo).format(\"DD-MM-YYYY\"))\n ) {\n result = false;\n }\n\n if (!result) {\n setShowDiscardModal(true);\n }\n\n return result;\n }, [modifiedDates, newDates]);\n\n const handleClose = useCallback(() => {\n if (mode !== \"atomic\" || handleBeforeCloseMenu()) {\n typeof onCancel === \"function\" && onCancel();\n setShowDatePicker(false);\n }\n }, [mode, onCancel, handleBeforeCloseMenu]);\n\n const handleCancel = useCallback(\n (event) => {\n event && event.preventDefault();\n return handleClose();\n },\n [handleClose]\n );\n\n const handleShowDatePicker = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n }, [showDatePicker]);\n\n const handleCloseDiscardModal = useCallback(() => {\n setShowDiscardModal(false);\n }, []);\n\n const handleClear = useCallback(() => {\n if (!dateRequired) {\n setNewDates(undefined);\n if (mode === \"instant\") {\n handleModifiedSave(undefined);\n }\n }\n }, [mode, dateRequired, handleModifiedSave]);\n\n const handleSaveDiscardModal = useCallback(() => {\n setNewDates(modifiedDates);\n setShowDiscardModal(false);\n setShowDatePicker(false);\n }, [modifiedDates]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n return {\n userAvailability: (day: Date): boolean => {\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return userAvailabilities.some((data) =>\n isDayInRange(currentDay, data)\n );\n },\n weekend: (day: Date): boolean => {\n return weekends.some((value) => day.getDay() === value);\n },\n nonWorkingDay: (day: Date): boolean => {\n // return true if day is weekend day\n if (weekends.some((value) => value === day.getDay())) {\n return true;\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return nonWorkingDays.some((data) => isDayInRange(currentDay, data));\n },\n day_disabled: (day: Date): boolean => {\n if (disableDaysBefore) {\n if (\n day.toJSON().slice(0, 10) < disableDaysBefore.toJSON().slice(0, 10)\n ) {\n return true;\n }\n }\n // return true if day is weekend day\n if (\n !weekendIsSelectable &&\n weekends.some((value) => value === day.getDay())\n ) {\n return true;\n }\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return globalDaysOff.some((data) => isDayInRange(currentDay, data));\n },\n nonWorkingDaysOfWeek: {\n dayOfWeek: nonWorkingDaysOfWeek,\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n weekends,\n disableDaysBefore,\n weekendIsSelectable,\n ]);\n\n const renderDay = useCallback(\n (props: DayProps): JSX.Element | null => {\n const titles: string[] = [];\n if (weekends.some((value) => props.date.getDay() === value)) {\n titles.push(weekendLabel);\n }\n\n if (nonWorkingDaysOfWeek.includes(props.date.getDay())) {\n titles.push(nonWorkingDaysOfWeekLabel);\n }\n\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n props.date.getFullYear(),\n props.date.getMonth(),\n props.date.getDate()\n );\n\n daysToModify.forEach((data) => {\n if (isDayInRange(currentDay, data)) {\n titles.push(data.title);\n }\n });\n const child = (\n <div className=\"c-DayPicker-Day-Number\">{props.date.getDate()}</div>\n );\n\n if (titles.length) {\n const title = (\n <div key={`title-wrapper-${props.date.getDate()}`}>\n {titles.map((title: string, index: number) => (\n <div key={`title-text-${index}`}>{title}</div>\n ))}\n </div>\n );\n\n return (\n <Tooltip\n title={title}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n >\n {child}\n </Tooltip>\n );\n }\n\n return child;\n },\n [\n weekends,\n nonWorkingDaysOfWeek,\n daysToModify,\n weekendLabel,\n nonWorkingDaysOfWeekLabel,\n popperTooltipClassName,\n popperTooltipStyle,\n ]\n );\n\n const renderDatePickerForm = useCallback((): JSX.Element => {\n return (\n <DatePickerForm\n onMonthChange={handleMonthChange}\n month={month}\n mode={mode}\n selectionMode={selectionMode}\n dateRequired={dateRequired}\n selectedDays={newDates}\n firstDayOfWeek={firstDayOfWeek}\n saveButtonText={saveButtonText}\n cancelButtonText={cancelButtonText}\n clearButtonText={clearButtonText}\n onDayClick={onDayClick}\n onSave={handleSave}\n onChange={handleChange}\n onCancel={handleCancel}\n onClear={handleClear}\n disabledSaveButton={disabledSaveButton}\n modifiers={modifiers}\n renderDay={renderDay}\n />\n );\n }, [\n handleMonthChange,\n month,\n mode,\n selectionMode,\n dateRequired,\n newDates,\n firstDayOfWeek,\n saveButtonText,\n cancelButtonText,\n clearButtonText,\n onDayClick,\n handleSave,\n handleChange,\n handleCancel,\n handleClear,\n disabledSaveButton,\n modifiers,\n renderDay,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n forceHideTooltip={showDatePicker}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n active={showDatePicker}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n showDatePicker,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <Menu\n target={renderTargetEl}\n open={showDatePicker}\n onOpen={handleShowDatePicker}\n onBeforeClose={handleBeforeCloseMenu}\n onClose={handleClose}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n backgroundElementClass={backgroundElementClass}\n >\n {renderDatePickerForm()}\n </Menu>\n ) : (\n renderDatePickerForm()\n )}\n {mode === \"atomic\" ? (\n <StyledConfirmDialog\n className=\"modal-select-date\"\n open={showDiscardModal}\n onCancel={handleCloseDiscardModal}\n onConfirm={handleSaveDiscardModal}\n dialogTitle={modalHeaderText}\n dialogContent={modalDiscardMessage}\n cancelBtnText={modalCancelBtnText}\n confirmBtnText={modalDiscardBtnText}\n />\n ) : null}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAYA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAMA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAA6C,SAAAE,uBAAAS,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAY,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAjB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAAA,SAAAY,eAAAC,GAAA,EAAAH,CAAA,WAAAI,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAH,CAAA,KAAAM,2BAAA,CAAAH,GAAA,EAAAH,CAAA,KAAAO,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAApB,CAAA,GAAAG,MAAA,CAAAI,SAAA,CAAAe,QAAA,CAAAb,IAAA,CAAAU,CAAA,EAAAI,KAAA,aAAAvB,CAAA,iBAAAmB,CAAA,CAAAK,WAAA,EAAAxB,CAAA,GAAAmB,CAAA,CAAAK,WAAA,CAAAC,IAAA,MAAAzB,CAAA,cAAAA,CAAA,mBAAA0B,KAAA,CAAAC,IAAA,CAAAR,CAAA,OAAAnB,CAAA,+DAAA4B,IAAA,CAAA5B,CAAA,UAAAqB,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAR,GAAA,EAAAgB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAhB,GAAA,CAAAiB,MAAA,EAAAD,GAAA,GAAAhB,GAAA,CAAAiB,MAAA,WAAApB,CAAA,MAAAqB,IAAA,OAAAL,KAAA,CAAAG,GAAA,GAAAnB,CAAA,GAAAmB,GAAA,EAAAnB,CAAA,IAAAqB,IAAA,CAAArB,CAAA,IAAAG,GAAA,CAAAH,CAAA,UAAAqB,IAAA;AAAA,SAAAhB,sBAAAnB,CAAA,EAAAoC,CAAA,QAAAnC,CAAA,WAAAD,CAAA,gCAAAqC,MAAA,IAAArC,CAAA,CAAAqC,MAAA,CAAAC,QAAA,KAAAtC,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAM,CAAA,EAAAU,CAAA,EAAAJ,CAAA,EAAAJ,CAAA,OAAAiC,CAAA,OAAAhB,CAAA,iBAAAT,CAAA,IAAAb,CAAA,GAAAA,CAAA,CAAAY,IAAA,CAAAb,CAAA,GAAAwC,IAAA,QAAAJ,CAAA,QAAA7B,MAAA,CAAAN,CAAA,MAAAA,CAAA,UAAAsC,CAAA,uBAAAA,CAAA,IAAAzC,CAAA,GAAAgB,CAAA,CAAAD,IAAA,CAAAZ,CAAA,GAAAwC,IAAA,MAAAnC,CAAA,CAAAoC,IAAA,CAAA5C,CAAA,CAAA6C,KAAA,GAAArC,CAAA,CAAA4B,MAAA,KAAAE,CAAA,GAAAG,CAAA,iBAAAvC,CAAA,IAAAuB,CAAA,OAAAnB,CAAA,GAAAJ,CAAA,yBAAAuC,CAAA,YAAAtC,CAAA,CAAA2C,MAAA,KAAAlC,CAAA,GAAAT,CAAA,CAAA2C,MAAA,IAAArC,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAa,CAAA,QAAAnB,CAAA,aAAAE,CAAA;AAAA,SAAAY,gBAAAD,GAAA,QAAAa,KAAA,CAAAe,OAAA,CAAA5B,GAAA,UAAAA,GAAA;AAE7C,IAAM6B,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIC,IAAU,EAAa;EACtD,OAAOC,eAAM,CACVC,GAAG,CAAC,CAACF,IAAI,CAACG,WAAW,CAAC,CAAC,EAAEH,IAAI,CAACI,QAAQ,CAAC,CAAC,EAAEJ,IAAI,CAACK,OAAO,CAAC,CAAC,CAAC,CAAC,CAC1DC,IAAI,CAAC,CAAC;AACX,CAAC;AAED,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,GAAS,EAAEC,IAAkB,EAAc;EAC/D,IAAIA,IAAI,CAACC,SAAS,EAAE;IAClB,IAAM1B,IAAI,GAAG,IAAI2B,IAAI,CACnBH,GAAG,CAACL,WAAW,CAAC,CAAC,EACjBM,IAAI,CAACzB,IAAI,CAACoB,QAAQ,CAAC,CAAC,EACpBK,IAAI,CAACzB,IAAI,CAACqB,OAAO,CAAC,CACpB,CAAC;IACD,IAAMO,EAAE,GAAG,IAAID,IAAI,CACjBH,GAAG,CAACL,WAAW,CAAC,CAAC,EACjBM,IAAI,CAACG,EAAE,CAACR,QAAQ,CAAC,CAAC,EAClBK,IAAI,CAACG,EAAE,CAACP,OAAO,CAAC,CAClB,CAAC;IACD,OAAOG,GAAG,IAAIxB,IAAI,IAAIwB,GAAG,IAAII,EAAE;EACjC;EAEA,OAAOJ,GAAG,IAAIC,IAAI,CAACzB,IAAI,IAAIwB,GAAG,IAAIC,IAAI,CAACG,EAAE;AAC3C,CAAC;AA4FM,IAAMC,UAA2B,GAAAC,OAAA,CAAAD,UAAA,GAAG,SAA9BA,UAA2BA,CAAAE,IAAA,EA0ClC;EAAA,IAAAC,eAAA,GAAAD,IAAA,CAzCJE,UAAU;IAAEC,IAAI,GAAAF,eAAA,cAAG,SAAS,GAAAA,eAAA;IAAAG,YAAA,GAAAJ,IAAA,CAC5BK,OAAO;IAAEC,SAAS,GAAAF,YAAA,cAAG,MAAM,GAAAA,YAAA;IAAAG,mBAAA,GAAAP,IAAA,CAC3BQ,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,MAAM,GAAAA,mBAAA;IAAAE,qBAAA,GAAAT,IAAA,CACvBU,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,QAAQ,GAAAA,qBAAA;IAAAE,oBAAA,GAAAX,IAAA,CAC3BY,eAAe;IAAfA,eAAe,GAAAD,oBAAA,cAAG,OAAO,GAAAA,oBAAA;IAAAE,oBAAA,GAAAb,IAAA,CACzBc,eAAe;IAAfA,eAAe,GAAAD,oBAAA,cAAG,kBAAkB,GAAAA,oBAAA;IAAAE,qBAAA,GAAAf,IAAA,CACpCgB,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,mCAAmC,GAAAA,qBAAA;IAAAE,qBAAA,GAAAjB,IAAA,CACzDkB,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;IAAAE,qBAAA,GAAAnB,IAAA,CAC1BoB,kBAAkB;IAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,QAAQ,GAAAA,qBAAA;IAC7BE,UAAU,GAAArB,IAAA,CAAVqB,UAAU;IACVC,MAAM,GAAAtB,IAAA,CAANsB,MAAM;IACNC,QAAQ,GAAAvB,IAAA,CAARuB,QAAQ;IACRC,kBAAkB,GAAAxB,IAAA,CAAlBwB,kBAAkB;IAAAC,aAAA,GAAAzB,IAAA,CAClB0B,QAAQ;IAAEC,YAAY,GAAAF,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAG,qBAAA,GAAA5B,IAAA,CAC9B6B,oBAAoB;IAApBA,oBAAoB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAAAE,mBAAA,GAAA9B,IAAA,CAC5B+B,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,KAAK,GAAAA,mBAAA;IAAAE,qBAAA,GAAAhC,IAAA,CACtBiC,qBAAqB;IAArBA,qBAAqB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAAAE,mBAAA,GAAAlC,IAAA,CAC7BmC,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,CAAC,GAAAA,mBAAA;IAClBE,YAAY,GAAApC,IAAA,CAAZoC,YAAY;IAAAC,kBAAA,GAAArC,IAAA,CACZsC,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,QAAQ,GAAAA,kBAAA;IACxBE,aAAa,GAAAvC,IAAA,CAAbuC,aAAa;IACbC,eAAe,GAAAxC,IAAA,CAAfwC,eAAe;IACfC,IAAI,GAAAzC,IAAA,CAAJyC,IAAI;IAAAC,qBAAA,GAAA1C,IAAA,CACJ2C,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,QAAQ,GAAAA,qBAAA;IAC3BE,mBAAmB,GAAA5C,IAAA,CAAnB4C,mBAAmB;IACnBC,mBAAmB,GAAA7C,IAAA,CAAnB6C,mBAAmB;IACnBC,sBAAsB,GAAA9C,IAAA,CAAtB8C,sBAAsB;IACVC,gBAAgB,GAAA/C,IAAA,CAA5BgD,UAAU;IACVC,YAAY,GAAAjD,IAAA,CAAZiD,YAAY;IAAAC,iBAAA,GAAAlD,IAAA,CACZmD,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,EAAE,GAAAA,iBAAA;IAAAE,aAAA,GAAApD,IAAA,CACjBqD,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,EAAE,GAAAA,aAAA;IAAAE,iBAAA,GAAAtD,IAAA,CACbuD,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,SAAS,GAAAA,iBAAA;IAAAE,qBAAA,GAAAxD,IAAA,CACxByD,oBAAoB;IAApBA,oBAAoB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;IAAAE,sBAAA,GAAA1D,IAAA,CACzB2D,yBAAyB;IAAzBA,yBAAyB,GAAAD,sBAAA,cAAG,aAAa,GAAAA,sBAAA;IAAAE,qBAAA,GAAA5D,IAAA,CACzC6D,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAC3BE,WAAW,GAAA9D,IAAA,CAAX8D,WAAW;IACXC,sBAAsB,GAAA/D,IAAA,CAAtB+D,sBAAsB;IACtBC,eAAe,GAAAhE,IAAA,CAAfgE,eAAe;IACfC,kBAAkB,GAAAjE,IAAA,CAAlBiE,kBAAkB;IAClBC,QAAQ,GAAAlE,IAAA,CAARkE,QAAQ;IACRC,iBAAiB,GAAAnE,IAAA,CAAjBmE,iBAAiB;EAEjB,IAAAC,SAAA,GAA0C,IAAAC,eAAQ,EAACxC,oBAAoB,CAAC;IAAAyC,UAAA,GAAApH,cAAA,CAAAkH,SAAA;IAAjEG,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EACtC,IAAMG,YAAY,GAAG,IAAAC,6BAAe,EAAC,CAAC;EACtC,IAAM1B,UAAU,GAAGD,gBAAgB,GAC/BA,gBAAgB,GAChB0B,YAAY,CAACzB,UAAU;EAE3B,IAAM2B,SAAS,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC9B,IAAI,CAACxC,YAAY,EAAE;MACjB,OAAOO,gBAAgB;IACzB,CAAC,MAAM;MACL,IAAMkC,OAAO,GAAGN,aAAa,GACzBrF,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACvC,EAAE,CAAC,CAACiF,KAAK,CAAC,CAAC,GACpC5F,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACvC,EAAE,CAAC,CAACV,GAAG,CAAC,CAAC;MAEtC,IAAM4F,SAAS,GAAGR,aAAa,GAC3BrF,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACnE,IAAI,CAAC,CAAC6G,KAAK,CAAC,CAAC,GACtC5F,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACnE,IAAI,CAAC,CAACkB,GAAG,CAAC,CAAC;MAExC,IAAM6F,gBAAgB,GAAG,IAAAC,qBAAU,EAACJ,OAAO,EAAE7B,UAAU,EAAEjB,cAAc,CAAC;MACxE,IAAMmD,kBAAkB,GAAG,IAAAD,qBAAU,EACnCF,SAAS,EACT/B,UAAU,EACVjB,cACF,CAAC;MAED,IAAIK,YAAY,CAACnE,IAAI,KAAKmE,YAAY,CAACvC,EAAE,EAAE;QACzC,OAAOmF,gBAAgB;MACzB;MAEA,OAAQ,GAAEE,kBAAmB,MAAKF,gBAAiB,EAAC;IACtD;EACF,CAAC,EAAE,CACD5C,YAAY,EACZY,UAAU,EACVuB,aAAa,EACb5B,gBAAgB,EAChBZ,cAAc,CACf,CAAC;EAEF,IAAMoD,aAAa,GAAG,IAAAP,cAAO,EAAC,YAAM;IAClC,IACE,OAAOxC,YAAY,KAAK,QAAQ,IAChC,CAAC,CAACA,YAAY,CAACnE,IAAI,IACnB,CAAC,CAACmE,YAAY,CAACvC,EAAE,EACjB;MACA,IAAI0E,aAAa,EAAE;QACjB,OAAO;UACLtG,IAAI,EAAEiB,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACnE,IAAI,CAAC,CAACmH,MAAM,CAAC,CAAC;UAC7CvF,EAAE,EAAEX,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACvC,EAAE,CAAC,CAACuF,MAAM,CAAC;QAC1C,CAAC;MACH;MACA,IAAMC,UAAU,GAAGnG,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACnE,IAAI,CAAC,CAACqH,SAAS,CAAC,CAAC,GAAG,EAAE;MAClE,IAAMC,QAAQ,GAAGrG,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACvC,EAAE,CAAC,CAACyF,SAAS,CAAC,CAAC,GAAG,EAAE;MAC9D,OAAO;QACLrH,IAAI,EAAE,IAAI2B,IAAI,CAAC,CAACwC,YAAY,CAACnE,IAAI,GAAGoH,UAAU,IAAI,IAAI,CAAC;QACvDxF,EAAE,EAAE,IAAID,IAAI,CAAC,CAACwC,YAAY,CAACvC,EAAE,GAAG0F,QAAQ,IAAI,IAAI;MAClD,CAAC;IACH;EACF,CAAC,EAAE,CAACnD,YAAY,EAAEmC,aAAa,CAAC,CAAC;EAEjC,IAAMiB,kBAAkB,GAAG,IAAAC,kBAAW,EACpC,UAACC,aAAa,EAAK;IACjBlB,gBAAgB,CAAC,KAAK,CAAC;IACvB,IAAI,OAAOlD,MAAM,KAAK,UAAU,EAAE;MAChC,IACE,OAAOoE,aAAa,KAAK,QAAQ,IACjCjJ,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC2I,aAAa,EAAE,MAAM,CAAC,IAC3DjJ,MAAM,CAACI,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC2I,aAAa,EAAE,IAAI,CAAC,EACzD;QACApE,MAAM,CAAC;UACLrD,IAAI,EAAEe,uBAAuB,CAAC0G,aAAa,CAACzH,IAAI,CAAC;UACjD4B,EAAE,EAAEb,uBAAuB,CAAC0G,aAAa,CAAC7F,EAAE;QAC9C,CAAC,CAAC;MACJ,CAAC,MAAM;QACLyB,MAAM,CAACqE,SAAS,CAAC;MACnB;IACF;EACF,CAAC,EACD,CAACrE,MAAM,CACT,CAAC;EAED,IAAMsE,eAAe,GAAG,IAAAH,kBAAW,EAAC,YAAM;IACxC,IAAIxG,IAAI,GAAG,IAAIW,IAAI,CAAC,CAAC;IAErB,IAAI,OAAOwC,YAAY,KAAK,QAAQ,IAAI,CAAC,CAACA,YAAY,CAACnE,IAAI,EAAE;MAC3DgB,IAAI,GAAGsF,aAAa,GAChB,IAAI3E,IAAI,CAACwC,YAAY,CAACnE,IAAI,GAAG,IAAI,CAAC,GAClC,IAAI2B,IAAI,CACN,CAACwC,YAAY,CAACnE,IAAI,GAChBiB,eAAM,CAACK,IAAI,CAAC6C,YAAY,CAACnE,IAAI,CAAC,CAACqH,SAAS,CAAC,CAAC,GAAG,EAAE,IAC/C,IACJ,CAAC;IACP,CAAC,MAAM,IAAIrC,YAAY,EAAE;MACvBhE,IAAI,GAAGgE,YAAY;IACrB;;IAEA;IACA,OAAO,IAAIrD,IAAI,CAACX,IAAI,CAACG,WAAW,CAAC,CAAC,EAAEH,IAAI,CAACI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;EACzD,CAAC,EAAE,CAAC4D,YAAY,EAAEb,YAAY,EAAEmC,aAAa,CAAC,CAAC;EAE/C,IAAAsB,UAAA,GAA0B,IAAAxB,eAAQ,EAACuB,eAAe,CAAC;IAAAE,UAAA,GAAA5I,cAAA,CAAA2I,UAAA;IAA5CE,KAAK,GAAAD,UAAA;IAAEE,QAAQ,GAAAF,UAAA;EAEtB,IAAMG,iBAAiB,GAAG,IAAAR,kBAAW,EACnC,UAACM,KAAK,EAAK;IACTC,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC,EACD,CAACC,QAAQ,CACX,CAAC;EAED,IAAAE,UAAA,GAAgC,IAAA7B,eAAQ,EAACc,aAAa,CAAC;IAAAgB,UAAA,GAAAjJ,cAAA,CAAAgJ,UAAA;IAAhDE,QAAQ,GAAAD,UAAA;IAAEE,WAAW,GAAAF,UAAA;EAC5B,IAAAG,UAAA,GAAgD,IAAAjC,eAAQ,EAAC,KAAK,CAAC;IAAAkC,UAAA,GAAArJ,cAAA,CAAAoJ,UAAA;IAAxDE,gBAAgB,GAAAD,UAAA;IAAEE,mBAAmB,GAAAF,UAAA;EAC5C,IAAAG,UAAA,GAA4C,IAAArC,eAAQ,EAACpC,qBAAqB,CAAC;IAAA0E,WAAA,GAAAzJ,cAAA,CAAAwJ,UAAA;IAApEE,cAAc,GAAAD,WAAA;IAAEE,iBAAiB,GAAAF,WAAA;EAExC,IAAMG,kBAAkB,GAAG,IAAAlC,cAAO,EAAC,YAAM;IACvC,OACE,CAAAO,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAElH,IAAI,OAAKmI,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEnI,IAAI,KACtC,CAAAkH,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEtF,EAAE,OAAKuG,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEvG,EAAE;EAEtC,CAAC,EAAE,CAACsF,aAAa,EAAEiB,QAAQ,CAAC,CAAC;EAE7B,IAAAW,gBAAS,EAAC,YAAM;IACdF,iBAAiB,CAAC5E,qBAAqB,CAAC;EAC1C,CAAC,EAAE,CAACA,qBAAqB,CAAC,CAAC;EAE3B,IAAA8E,gBAAS,EAAC,YAAM;IACdV,WAAW,CAAClB,aAAa,CAAC;EAC5B,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnB,IAAA4B,gBAAS,EAAC,YAAM;IACd,OAAOvF,kBAAkB,KAAK,UAAU,IACtCA,kBAAkB,CAACoF,cAAc,CAAC;EACtC,CAAC,EAAE,CAACA,cAAc,EAAEpF,kBAAkB,CAAC,CAAC;EAExC,IAAAuF,gBAAS,EAAC,YAAM;IACd,IAAI,CAACH,cAAc,EAAE;MACnBZ,QAAQ,CAACJ,eAAe,CAAC,CAAC,CAAC;IAC7B;EACF,CAAC,EAAE,CAACgB,cAAc,EAAEhB,eAAe,CAAC,CAAC;EAErC,IAAMoB,UAAU,GAAG,IAAAvB,kBAAW,EAAC,YAAM;IACnCD,kBAAkB,CAACY,QAAQ,CAAC;IAC5BS,iBAAiB,CAAC,KAAK,CAAC;EAC1B,CAAC,EAAE,CAACT,QAAQ,EAAEZ,kBAAkB,CAAC,CAAC;EAElC,IAAMyB,YAAY,GAAG,IAAAxB,kBAAW,EAC9B,UAACyB,KAAK,EAAK;IACT,IAAI/G,IAAI,KAAK,QAAQ,EAAE;MACrBqF,kBAAkB,CAAC0B,KAAK,CAAC;IAC3B;IACAb,WAAW,CAACa,KAAK,CAAC;EACpB,CAAC,EACD,CAAC/G,IAAI,EAAEqF,kBAAkB,CAC3B,CAAC;EAED,IAAM2B,qBAAqB,GAAG,IAAA1B,kBAAW,EAAC,YAAM;IAC9C,IAAI2B,MAAM,GAAG,IAAI;IAEjB,IAAKjC,aAAa,IAAI,CAACiB,QAAQ,IAAM,CAACjB,aAAa,IAAIiB,QAAS,EAAE;MAChEgB,MAAM,GAAG,KAAK;IAChB;IAEA,IAAMC,gBAAgB,GAAGlC,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAElH,IAAI;IAC5C,IAAMqJ,cAAc,GAAGnC,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEtF,EAAE;IACxC,IAAM0H,YAAY,GAAGnB,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEnI,IAAI;IACnC,IAAMuJ,UAAU,GAAGpB,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEvG,EAAE;IAE/B,IACEwH,gBAAgB,IAChBE,YAAY,IACZD,cAAc,IACdE,UAAU,KACT,IAAAtI,eAAM,EAACmI,gBAAgB,CAAC,CAACI,MAAM,CAAC,YAAY,CAAC,KAC5C,IAAAvI,eAAM,EAACqI,YAAY,CAAC,CAACE,MAAM,CAAC,YAAY,CAAC,IACzC,IAAAvI,eAAM,EAACoI,cAAc,CAAC,CAACG,MAAM,CAAC,YAAY,CAAC,KACzC,IAAAvI,eAAM,EAACsI,UAAU,CAAC,CAACC,MAAM,CAAC,YAAY,CAAC,CAAC,EAC5C;MACAL,MAAM,GAAG,KAAK;IAChB;IAEA,IAAI,CAACA,MAAM,EAAE;MACXX,mBAAmB,CAAC,IAAI,CAAC;IAC3B;IAEA,OAAOW,MAAM;EACf,CAAC,EAAE,CAACjC,aAAa,EAAEiB,QAAQ,CAAC,CAAC;EAE7B,IAAMsB,WAAW,GAAG,IAAAjC,kBAAW,EAAC,YAAM;IACpC,IAAItF,IAAI,KAAK,QAAQ,IAAIgH,qBAAqB,CAAC,CAAC,EAAE;MAChD,OAAO5F,QAAQ,KAAK,UAAU,IAAIA,QAAQ,CAAC,CAAC;MAC5CsF,iBAAiB,CAAC,KAAK,CAAC;IAC1B;EACF,CAAC,EAAE,CAAC1G,IAAI,EAAEoB,QAAQ,EAAE4F,qBAAqB,CAAC,CAAC;EAE3C,IAAMQ,YAAY,GAAG,IAAAlC,kBAAW,EAC9B,UAACmC,KAAK,EAAK;IACTA,KAAK,IAAIA,KAAK,CAACC,cAAc,CAAC,CAAC;IAC/B,OAAOH,WAAW,CAAC,CAAC;EACtB,CAAC,EACD,CAACA,WAAW,CACd,CAAC;EAED,IAAMI,oBAAoB,GAAG,IAAArC,kBAAW,EAAC,YAAM;IAC7CoB,iBAAiB,CAAC,CAACD,cAAc,CAAC;EACpC,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,IAAMmB,uBAAuB,GAAG,IAAAtC,kBAAW,EAAC,YAAM;IAChDgB,mBAAmB,CAAC,KAAK,CAAC;EAC5B,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMuB,WAAW,GAAG,IAAAvC,kBAAW,EAAC,YAAM;IACpC,IAAI,CAAC9D,YAAY,EAAE;MACjB0E,WAAW,CAACV,SAAS,CAAC;MACtB,IAAIxF,IAAI,KAAK,SAAS,EAAE;QACtBqF,kBAAkB,CAACG,SAAS,CAAC;MAC/B;IACF;EACF,CAAC,EAAE,CAACxF,IAAI,EAAEwB,YAAY,EAAE6D,kBAAkB,CAAC,CAAC;EAE5C,IAAMyC,sBAAsB,GAAG,IAAAxC,kBAAW,EAAC,YAAM;IAC/CY,WAAW,CAAClB,aAAa,CAAC;IAC1BsB,mBAAmB,CAAC,KAAK,CAAC;IAC1BI,iBAAiB,CAAC,KAAK,CAAC;EAC1B,CAAC,EAAE,CAAC1B,aAAa,CAAC,CAAC;EAEnB,IAAM+C,SAAS,GAAG,IAAAtD,cAAO,EAAC,YAAM;IAC9B,IAAMuD,kBAAkB,GAAGhF,YAAY,CAACiF,MAAM,CAC5C,UAAC1I,IAAI;MAAA,OAAKA,IAAI,CAAC2I,IAAI,KAAK,cAAc;IAAA,CACxC,CAAC;IACD,IAAMC,aAAa,GAAGnF,YAAY,CAACiF,MAAM,CACvC,UAAC1I,IAAI;MAAA,OAAKA,IAAI,CAAC2I,IAAI,KAAK,gBAAgB;IAAA,CAC1C,CAAC;IACD,IAAME,uBAAuB,GAAGpF,YAAY,CAACiF,MAAM,CACjD,UAAC1I,IAAI;MAAA,OAAKA,IAAI,CAAC2I,IAAI,KAAK,2BAA2B;IAAA,CACrD,CAAC;IACD,OAAO;MACLG,gBAAgB,EAAE,SAAAA,iBAAC/I,GAAS,EAAc;QACxC;QACA,IAAMgJ,UAAU,GAAG,IAAI7I,IAAI,CACzBH,GAAG,CAACL,WAAW,CAAC,CAAC,EACjBK,GAAG,CAACJ,QAAQ,CAAC,CAAC,EACdI,GAAG,CAACH,OAAO,CAAC,CACd,CAAC;QACD,OAAO6I,kBAAkB,CAACO,IAAI,CAAC,UAAChJ,IAAI;UAAA,OAClCF,YAAY,CAACiJ,UAAU,EAAE/I,IAAI,CAAC;QAAA,CAChC,CAAC;MACH,CAAC;MACDiJ,OAAO,EAAE,SAAAA,QAAClJ,GAAS,EAAc;QAC/B,OAAO4D,QAAQ,CAACqF,IAAI,CAAC,UAAC7J,KAAK;UAAA,OAAKY,GAAG,CAACmJ,MAAM,CAAC,CAAC,KAAK/J,KAAK;QAAA,EAAC;MACzD,CAAC;MACDgK,aAAa,EAAE,SAAAA,cAACpJ,GAAS,EAAc;QACrC;QACA,IAAI4D,QAAQ,CAACqF,IAAI,CAAC,UAAC7J,KAAK;UAAA,OAAKA,KAAK,KAAKY,GAAG,CAACmJ,MAAM,CAAC,CAAC;QAAA,EAAC,EAAE;UACpD,OAAO,IAAI;QACb;QACA,IAAME,cAAc,GAAG,CAAC,GAAGP,uBAAuB,EAAE,GAAGD,aAAa,CAAC;QACrE,IAAMG,UAAU,GAAG,IAAI7I,IAAI,CACzBH,GAAG,CAACL,WAAW,CAAC,CAAC,EACjBK,GAAG,CAACJ,QAAQ,CAAC,CAAC,EACdI,GAAG,CAACH,OAAO,CAAC,CACd,CAAC;QACD,OAAOwJ,cAAc,CAACJ,IAAI,CAAC,UAAChJ,IAAI;UAAA,OAAKF,YAAY,CAACiJ,UAAU,EAAE/I,IAAI,CAAC;QAAA,EAAC;MACtE,CAAC;MACDqJ,YAAY,EAAE,SAAAA,aAACtJ,GAAS,EAAc;QACpC,IAAI0E,iBAAiB,EAAE;UACrB,IACE1E,GAAG,CAACuJ,MAAM,CAAC,CAAC,CAACnL,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGsG,iBAAiB,CAAC6E,MAAM,CAAC,CAAC,CAACnL,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EACnE;YACA,OAAO,IAAI;UACb;QACF;QACA;QACA,IACE,CAACgG,mBAAmB,IACpBR,QAAQ,CAACqF,IAAI,CAAC,UAAC7J,KAAK;UAAA,OAAKA,KAAK,KAAKY,GAAG,CAACmJ,MAAM,CAAC,CAAC;QAAA,EAAC,EAChD;UACA,OAAO,IAAI;QACb;QACA;QACA,IAAMH,UAAU,GAAG,IAAI7I,IAAI,CACzBH,GAAG,CAACL,WAAW,CAAC,CAAC,EACjBK,GAAG,CAACJ,QAAQ,CAAC,CAAC,EACdI,GAAG,CAACH,OAAO,CAAC,CACd,CAAC;QACD,OAAOgJ,aAAa,CAACI,IAAI,CAAC,UAAChJ,IAAI;UAAA,OAAKF,YAAY,CAACiJ,UAAU,EAAE/I,IAAI,CAAC;QAAA,EAAC;MACrE,CAAC;MACD+D,oBAAoB,EAAE;QACpBwF,SAAS,EAAExF;MACb;IACF,CAAC;EACH,CAAC,EAAE,CACDN,YAAY,EACZM,oBAAoB,EACpBJ,QAAQ,EACRc,iBAAiB,EACjBN,mBAAmB,CACpB,CAAC;EAEF,IAAMqF,SAAS,GAAG,IAAAzD,kBAAW,EAC3B,UAAC0D,KAAe,EAAyB;IACvC,IAAMC,MAAgB,GAAG,EAAE;IAC3B,IAAI/F,QAAQ,CAACqF,IAAI,CAAC,UAAC7J,KAAK;MAAA,OAAKsK,KAAK,CAAClK,IAAI,CAAC2J,MAAM,CAAC,CAAC,KAAK/J,KAAK;IAAA,EAAC,EAAE;MAC3DuK,MAAM,CAACxK,IAAI,CAAC2E,YAAY,CAAC;IAC3B;IAEA,IAAIE,oBAAoB,CAAC4F,QAAQ,CAACF,KAAK,CAAClK,IAAI,CAAC2J,MAAM,CAAC,CAAC,CAAC,EAAE;MACtDQ,MAAM,CAACxK,IAAI,CAAC+E,yBAAyB,CAAC;IACxC;;IAEA;IACA,IAAM8E,UAAU,GAAG,IAAI7I,IAAI,CACzBuJ,KAAK,CAAClK,IAAI,CAACG,WAAW,CAAC,CAAC,EACxB+J,KAAK,CAAClK,IAAI,CAACI,QAAQ,CAAC,CAAC,EACrB8J,KAAK,CAAClK,IAAI,CAACK,OAAO,CAAC,CACrB,CAAC;IAED6D,YAAY,CAACmG,OAAO,CAAC,UAAC5J,IAAI,EAAK;MAC7B,IAAIF,YAAY,CAACiJ,UAAU,EAAE/I,IAAI,CAAC,EAAE;QAClC0J,MAAM,CAACxK,IAAI,CAACc,IAAI,CAAC6J,KAAK,CAAC;MACzB;IACF,CAAC,CAAC;IACF,IAAMC,KAAK,gBACTzO,MAAA,CAAAe,OAAA,CAAA2N,aAAA;MAAKC,SAAS,EAAC;IAAwB,GAAEP,KAAK,CAAClK,IAAI,CAACK,OAAO,CAAC,CAAO,CACpE;IAED,IAAI8J,MAAM,CAAChL,MAAM,EAAE;MACjB,IAAMmL,KAAK,gBACTxO,MAAA,CAAAe,OAAA,CAAA2N,aAAA;QAAKE,GAAG,EAAG,iBAAgBR,KAAK,CAAClK,IAAI,CAACK,OAAO,CAAC,CAAE;MAAE,GAC/C8J,MAAM,CAACQ,GAAG,CAAC,UAACL,KAAa,EAAEM,KAAa;QAAA,oBACvC9O,MAAA,CAAAe,OAAA,CAAA2N,aAAA;UAAKE,GAAG,EAAG,cAAaE,KAAM;QAAE,GAAEN,KAAW,CAAC;MAAA,CAC/C,CACE,CACN;MAED,oBACExO,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAAC9N,QAAA,CAAAmO,OAAO;QACNP,KAAK,EAAEA,KAAM;QACbxF,sBAAsB,EAAEA,sBAAuB;QAC/CE,kBAAkB,EAAEA;MAAmB,GAEtCuF,KACM,CAAC;IAEd;IAEA,OAAOA,KAAK;EACd,CAAC,EACD,CACEnG,QAAQ,EACRI,oBAAoB,EACpBN,YAAY,EACZI,YAAY,EACZI,yBAAyB,EACzBI,sBAAsB,EACtBE,kBAAkB,CAEtB,CAAC;EAED,IAAM8F,oBAAoB,GAAG,IAAAtE,kBAAW,EAAC,YAAmB;IAC1D,oBACE1K,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAACpO,eAAA,CAAA2O,cAAc;MACbC,aAAa,EAAEhE,iBAAkB;MACjCF,KAAK,EAAEA,KAAM;MACb5F,IAAI,EAAEA,IAAK;MACXmC,aAAa,EAAEA,aAAc;MAC7BX,YAAY,EAAEA,YAAa;MAC3BS,YAAY,EAAEgE,QAAS;MACvBjE,cAAc,EAAEA,cAAe;MAC/B3B,cAAc,EAAEA,cAAe;MAC/BE,gBAAgB,EAAEA,gBAAiB;MACnCE,eAAe,EAAEA,eAAgB;MACjCS,UAAU,EAAEA,UAAW;MACvBC,MAAM,EAAE0F,UAAW;MACnBkD,QAAQ,EAAEjD,YAAa;MACvB1F,QAAQ,EAAEoG,YAAa;MACvBwC,OAAO,EAAEnC,WAAY;MACrBlB,kBAAkB,EAAEA,kBAAmB;MACvCoB,SAAS,EAAEA,SAAU;MACrBgB,SAAS,EAAEA;IAAU,CACtB,CAAC;EAEN,CAAC,EAAE,CACDjD,iBAAiB,EACjBF,KAAK,EACL5F,IAAI,EACJmC,aAAa,EACbX,YAAY,EACZyE,QAAQ,EACRjE,cAAc,EACd3B,cAAc,EACdE,gBAAgB,EAChBE,eAAe,EACfS,UAAU,EACV2F,UAAU,EACVC,YAAY,EACZU,YAAY,EACZK,WAAW,EACXlB,kBAAkB,EAClBoB,SAAS,EACTgB,SAAS,CACV,CAAC;EAEF,IAAMkB,cAAc,GAAG,IAAAxF,cAAO,EAAC,YAAM;IACnC,IAAItE,SAAS,KAAK,MAAM,IAAImC,IAAI,EAAE;MAChC,oBACE1H,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAACnO,iBAAA,CAAA+O,gBAAgB;QACf5H,IAAI,EAAEA,IAAK;QACX8G,KAAK,EAAEzF,WAAY;QACnBjB,mBAAmB,EAAEA,mBAAoB;QACzCyH,gBAAgB,EAAE1D,cAAe;QACjC7C,sBAAsB,EAAEA,sBAAuB;QAC/CE,kBAAkB,EAAEA,kBAAmB;QACvCsG,MAAM,EAAE3D;MAAe,CACxB,CAAC;IAEN;IACA,IAAI,OAAOtG,SAAS,KAAK,UAAU,EAAE;MACnC,OAAOA,SAAS,CAACqE,SAAS,CAAC;IAC7B;IACA,oBACE5J,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAAClO,OAAA,CAAAiP,sBAAsB;MACrBnC,IAAI,EAAC,QAAQ;MACbqB,SAAS,EAAE,IAAAe,mBAAU,EAAC,oBAAoB,EAAEjI,eAAe;IAAE,gBAE7DzH,MAAA,CAAAe,OAAA,CAAA2N,aAAA;MAAMC,SAAS,EAAE9G;IAAoB,GAAE+B,SAAgB,CACjC,CAAC;EAE7B,CAAC,EAAE,CACDlC,IAAI,EACJkC,SAAS,EACTrE,SAAS,EACTyD,sBAAsB,EACtBE,kBAAkB,EAClB2C,cAAc,EACdpE,eAAe,EACfK,mBAAmB,EACnBD,mBAAmB,EACnBkB,WAAW,CACZ,CAAC;EAEF,oBACE/I,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAAClO,OAAA,CAAAmP,gBAAgB;IAAChB,SAAS,EAAC;EAAa,GACtCpJ,SAAS,KAAK,QAAQ,gBACrBvF,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAAC/N,KAAA,CAAAiP,IAAI;IACHC,MAAM,EAAER,cAAe;IACvBS,IAAI,EAAEjE,cAAe;IACrBkE,MAAM,EAAEhD,oBAAqB;IAC7BiD,aAAa,EAAE5D,qBAAsB;IACrC6D,OAAO,EAAEtD,WAAY;IACrBxD,QAAQ,EAAEA,QAAS;IACnB3B,aAAa,EAAEA,aAAc;IAC7ByB,eAAe,EAAEA,eAAgB;IACjClB,sBAAsB,EAAEA;EAAuB,GAE9CiH,oBAAoB,CAAC,CAClB,CAAC,GAEPA,oBAAoB,CAAC,CACtB,EACA5J,IAAI,KAAK,QAAQ,gBAChBpF,MAAA,CAAAe,OAAA,CAAA2N,aAAA,CAAClO,OAAA,CAAA0P,mBAAmB;IAClBvB,SAAS,EAAC,mBAAmB;IAC7BmB,IAAI,EAAErE,gBAAiB;IACvBjF,QAAQ,EAAEwG,uBAAwB;IAClCmD,SAAS,EAAEjD,sBAAuB;IAClCkD,WAAW,EAAErK,eAAgB;IAC7BsK,aAAa,EAAEpK,mBAAoB;IACnCqK,aAAa,EAAEjK,kBAAmB;IAClCkK,cAAc,EAAEpK;EAAoB,CACrC,CAAC,GACA,IACY,CAAC;AAEvB,CAAC;AAEDpB,UAAU,CAACyL,WAAW,GAAG,YAAY"}
@@ -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;CACvB;AAuFD,eAAO,MAAM,aAAa,6FA2FzB,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;CACvB;AAuFD,eAAO,MAAM,aAAa,6FA0GzB,CAAC"}
@@ -125,6 +125,14 @@ const InputPassword = exports.InputPassword = /*#__PURE__*/(0, _react.forwardRef
125
125
  (0, _react.useEffect)(() => {
126
126
  setShowText(show);
127
127
  }, [show]);
128
+ if (validation?.levels && validation?.getStrength && typeof validation?.getStrength === "function") {
129
+ if (validation.levels.length !== 5) {
130
+ console.warn("Levels length must be exactly 5.");
131
+ }
132
+ if (typeof validation.getStrength("test") !== "number") {
133
+ console.warn("getStrength must be a function that accepts a string and returns a number.");
134
+ }
135
+ }
128
136
  return /*#__PURE__*/_react.default.createElement(StyledInputPasswordWrapper, null, /*#__PURE__*/_react.default.createElement(_Input.Input, (0, _extends2.default)({}, rest, {
129
137
  ref: handleRef,
130
138
  size: size,
@@ -1 +1 @@
1
- {"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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","show","value","defaultValue","validation","onChange","rest","inputRef","useRef","handleRef","useForkRef","setShowText","useState","strength","setStrength","setValue","handleChange","useCallback","target","getStrength","current","focus","prevState","useEffect","Input","_extends2","endAdornment","levels","length","StyledPasswordIndicatorWrapper","Array","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 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 <>\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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"}
1
+ {"version":3,"file":"InputPassword.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Input","_Styles","_utils","_IconButton","_Icons","_Tooltip","_Typography","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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","show","value","defaultValue","validation","onChange","rest","inputRef","useRef","handleRef","useForkRef","setShowText","useState","strength","setStrength","setValue","handleChange","useCallback","target","getStrength","current","focus","prevState","useEffect","levels","length","console","warn","Input","_extends2","endAdornment","StyledPasswordIndicatorWrapper","Array","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 <>\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":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAIA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAQA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AAAyC,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEzC,MAAMY,SAAS,GAAG;EAChBC,OAAO,EAAE,KAAK;EACdC,OAAO,EAAE,OAAO;EAChBC,GAAG,EAAE;AACP,CAAU;AA0BV,MAAMC,kBAAkB,GAAG,IAAAC,yBAAM,EAACC,mBAAY,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACzC;EAAA;AAAkB,CAAC,CACxB;AAED,MAAMC,qBAAqB,GAAG,IAAAL,yBAAM,EAACM,sBAAe,CAAC,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC/C;EAAA;AAAkB,CAAC,CACxB;AAED,MAAMG,aAAa,GAAG,IAAAP,yBAAM,EAACQ,cAAO,CAAC,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC/B;EAAA;AAAkB,CAAC,CACxB;AAED,MAAMK,gBAAgB,GAAG,IAAAT,yBAAM,EAACU,iBAAU,CAAC,CAAAR,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACrC;EAAA;AAAkB,CAAC,CACxB;AACD,MAAMO,cAAc,GAAG,IAAAX,yBAAM,EAACY,eAAQ,CAAC,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACjC;EAAA;EAAA;EAAA;AAAqC,CAAC,CAC3C;AAED,MAAMS,mBAAmB,GAAG,IAAAb,yBAAM,EAACc,oBAAa,CAAC,CAAAZ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC3C;EAAA;EAAA;EAAA;AAAqC,CAAC,CAC3C;AAED,MAAMW,0BAA0B,GAAGf,yBAAM,CAACgB,GAAG,CAAAd,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,6DAI5C;AAcD,MAAMa,sBAAsB,GAAGC,IAAA;EAAA,IAAC;IAC9BC,OAAO;IACPC,YAAY;IACZC,IAAI;IACJC,WAAW;IACXC,QAAQ;IACRC,eAAe;IACfC,eAAe;IACfC,QAAQ;IACRC;EAC2B,CAAC,GAAAT,IAAA;EAAA,oBAC5BxD,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAAlE,MAAA,CAAAkB,OAAA,CAAAiD,QAAA,QACGV,OAAO,IAAIC,YAAY,iBACtB1D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACxD,QAAA,CAAA0D,OAAO;IAACC,KAAK,EAAEX;EAAa,GAC1BC,IAAI,KAAK,SAAS,gBAAG3D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACf,mBAAmB,MAAE,CAAC,gBAAGnD,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACjB,cAAc,MAAE,CAC1D,CACV,EACA,CAACW,WAAW,iBACX5D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACxD,QAAA,CAAA0D,OAAO;IAACC,KAAK,EAAER,QAAQ,GAAGC,eAAe,GAAGC;EAAgB,gBAC3D/D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAC1D,WAAA,CAAA8D,UAAU;IACTC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,QAAQ;IACbb,IAAI,EAAE1B,SAAS,CAAC0B,IAAI,CAAgC;IACpDK,QAAQ,EAAEA,QAAS;IACnBS,OAAO,EAAER,UAAW;IACpBS,KAAK,EAAE;MAAEC,UAAU,EAAE;IAAE;EAAE,GAExBd,QAAQ,GACPF,IAAI,KAAK,SAAS,gBAChB3D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACvB,qBAAqB,MAAE,CAAC,gBAEzB3C,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACnB,gBAAgB,MAAE,CACpB,GACCY,IAAI,KAAK,SAAS,gBACpB3D,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAC7B,kBAAkB,MAAE,CAAC,gBAEtBrC,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACrB,aAAa,MAAE,CAER,CACL,CAEX,CAAC;AAAA,CACJ;AAEM,MAAM+B,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAG,IAAAE,iBAAU,EACrC,CAAAC,KAAA,EAeEC,GAAG,KACA;EAAA,IAfH;IACErB,IAAI,GAAG,SAAS;IAChBK,QAAQ;IACRiB,IAAI,GAAG,KAAK;IACZrB,WAAW;IACXG,eAAe,GAAG,MAAM;IACxBD,eAAe,GAAG,MAAM;IACxBoB,KAAK,EAAEC,YAAY,GAAG,EAAE;IACxBC,UAAU;IACV1B,YAAY;IACZD,OAAO;IACP4B,QAAQ;IACR,GAAGC;EACL,CAAC,GAAAP,KAAA;EAGD,MAAMQ,QAAQ,GAAG,IAAAC,aAAM,EAA0B,IAAI,CAAC;EACtD,MAAMC,SAAS,GAAG,IAAAC,iBAAU,EAACV,GAAG,EAAEO,QAAQ,CAAC;EAE3C,MAAM,CAAC1B,QAAQ,EAAE8B,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAACX,IAAI,CAAC;EAC9C,MAAM,CAACY,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC,CAAC;EAC3C,MAAM,CAACV,KAAK,EAAEa,QAAQ,CAAC,GAAG,IAAAH,eAAQ,EAAC,MAAMT,YAAsB,CAAC;EAEhE,MAAMa,YAAY,GAAG,IAAAC,kBAAW,EAC7BpF,CAAC,IAAK;IACLkF,QAAQ,CAAClF,CAAC,CAACqF,MAAM,CAAChB,KAAK,CAAC;IACxB,OAAOE,UAAU,EAAEe,WAAW,KAAK,UAAU,IAC3CL,WAAW,CAACV,UAAU,CAACe,WAAW,CAACtF,CAAC,CAACqF,MAAM,CAAChB,KAAK,CAAC,CAAC;IACrD,OAAOG,QAAQ,KAAK,UAAU,IAAIA,QAAQ,CAACxE,CAAC,CAACqF,MAAM,CAAChB,KAAK,CAAC;EAC5D,CAAC,EACD,CAACG,QAAQ,EAAED,UAAU,CACvB,CAAC;EAED,MAAMnB,UAAU,GAAG,IAAAgC,kBAAW,EAAC,MAAM;IACnCV,QAAQ,CAACa,OAAO,EAAEC,KAAK,CAAC,CAAC;IACzBV,WAAW,CAAEW,SAAS,IAAK,CAACA,SAAS,CAAC;EACxC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAC,gBAAS,EAAC,MAAM;IACdZ,WAAW,CAACV,IAAI,CAAC;EACnB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IACEG,UAAU,EAAEoB,MAAM,IAClBpB,UAAU,EAAEe,WAAW,IACvB,OAAOf,UAAU,EAAEe,WAAW,KAAK,UAAU,EAC7C;IACA,IAAIf,UAAU,CAACoB,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE;MAClCC,OAAO,CAACC,IAAI,CAAC,kCAAkC,CAAC;IAClD;IACA,IAAI,OAAOvB,UAAU,CAACe,WAAW,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE;MACtDO,OAAO,CAACC,IAAI,CACV,4EACF,CAAC;IACH;EACF;EAEA,oBACE3G,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACb,0BAA0B,qBACzBrD,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAC7D,MAAA,CAAAuG,KAAK,MAAAC,SAAA,CAAA3F,OAAA,MACAoE,IAAI;IACRN,GAAG,EAAES,SAAU;IACf9B,IAAI,EAAEA,IAAK;IACXuB,KAAK,EAAEA,KAAM;IACblB,QAAQ,EAAEA,QAAS;IACnBQ,IAAI,EAAEX,QAAQ,GAAG,MAAM,GAAG,UAAW;IACrCwB,QAAQ,EAAEW,YAAa;IACvBvC,OAAO,EAAEA,OAAQ;IACjB,eAAY,eAAe;IAC3BqD,YAAY,eACV9G,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACX,sBAAsB;MACrBE,OAAO,EAAEA,OAAQ;MACjBC,YAAY,EAAEA,YAAa;MAC3BC,IAAI,EAAEA,IAAK;MACXC,WAAW,EAAEA,WAAY;MACzBC,QAAQ,EAAEA,QAAS;MACnBC,eAAe,EAAEA,eAAgB;MACjCC,eAAe,EAAEA,eAAgB;MACjCC,QAAQ,EAAEA,QAAS;MACnBC,UAAU,EAAEA;IAAW,CACxB;EACF,EACF,CAAC,EACDmB,UAAU,EAAEoB,MAAM,CAACC,MAAM,KAAK,CAAC,IAC9B,OAAOrB,UAAU,CAACe,WAAW,KAAK,UAAU,iBAC1CnG,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAAlE,MAAA,CAAAkB,OAAA,CAAAiD,QAAA,qBACEnE,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAC5D,OAAA,CAAAyG,8BAA8B,QAC5B,CAAC,GAAGC,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,kBAC1BnH,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAAC5D,OAAA,CAAA8G,uBAAuB;IACtBC,GAAG,EAAEF,KAAM;IACXG,SAAS,EAAEzB,QAAS;IACpB0B,MAAM,EAAEJ,KAAM;IACd,eAAatB,QAAQ,IAAIsB,KAAK,GAAG,CAAC,GAAG,QAAQ,GAAG;EAAG,CACpD,CACF,CAC6B,CAAC,eACjCnH,MAAA,CAAAkB,OAAA,CAAAgD,aAAA,CAACvD,WAAA,CAAA6G,QAAQ;IAACC,KAAK,EAAC,OAAO;IAACC,KAAK,EAAC;EAAU,GACrCtC,UAAU,CAACoB,MAAM,CAACX,QAAQ,CACnB,CACV,CAEoB,CAAC;AAEjC,CACF,CAAC;AAEDjB,aAAa,CAACnC,WAAW,GAAG,eAAe"}
@@ -143,7 +143,7 @@ const SelectDate = _ref => {
143
143
  setShowDatePicker(defaultShowDatePicker);
144
144
  }, [defaultShowDatePicker]);
145
145
  (0, _react.useEffect)(() => {
146
- modifiedDates && setNewDates(modifiedDates);
146
+ setNewDates(modifiedDates);
147
147
  }, [modifiedDates]);
148
148
  (0, _react.useEffect)(() => {
149
149
  typeof onToggleDatePicker === "function" && onToggleDatePicker(showDatePicker);