{"ast":null,"code":"import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nconst _excluded = [\"mode\", \"dense\", \"disabled\", \"error\", \"multiline\", \"editable\", \"contentStyle\", \"render\", \"theme\"];\nfunction _extends() {\n  return _extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, _extends.apply(null, arguments);\n}\nimport * as React from 'react';\nimport Animated from \"react-native-web/dist/exports/Animated\";\nimport NativeTextInput from \"react-native-web/dist/exports/TextInput\";\nimport TextInputAffix from \"./Adornment/TextInputAffix\";\nimport TextInputIcon from \"./Adornment/TextInputIcon\";\nimport TextInputFlat from \"./TextInputFlat\";\nimport TextInputOutlined from \"./TextInputOutlined\";\nimport { useInternalTheme } from \"../../core/theming\";\nimport { forwardRef } from \"../../utils/forwardRef\";\nimport { roundLayoutSize } from \"../../utils/roundLayoutSize\";\nconst BLUR_ANIMATION_DURATION = 180;\nconst FOCUS_ANIMATION_DURATION = 150;\nconst DefaultRenderer = props => React.createElement(NativeTextInput, props);\nconst TextInput = forwardRef((_ref, ref) => {\n  let {\n      mode = 'flat',\n      dense = false,\n      disabled = false,\n      error: errorProp = false,\n      multiline = false,\n      editable = true,\n      contentStyle,\n      render = DefaultRenderer,\n      theme: themeOverrides\n    } = _ref,\n    rest = _objectWithoutPropertiesLoose(_ref, _excluded);\n  const theme = useInternalTheme(themeOverrides);\n  const isControlled = rest.value !== undefined;\n  const validInputValue = isControlled ? rest.value : rest.defaultValue;\n  const {\n    current: labeled\n  } = React.useRef(new Animated.Value(validInputValue ? 0 : 1));\n  const {\n    current: error\n  } = React.useRef(new Animated.Value(errorProp ? 1 : 0));\n  const [focused, setFocused] = React.useState(false);\n  const [displayPlaceholder, setDisplayPlaceholder] = React.useState(false);\n  const [uncontrolledValue, setUncontrolledValue] = React.useState(validInputValue);\n  const value = isControlled ? rest.value : uncontrolledValue;\n  const [labelTextLayout, setLabelTextLayout] = React.useState({\n    width: 33\n  });\n  const [inputContainerLayout, setInputContainerLayout] = React.useState({\n    width: 65\n  });\n  const [labelLayout, setLabelLayout] = React.useState({\n    measured: false,\n    width: 0,\n    height: 0\n  });\n  const [leftLayout, setLeftLayout] = React.useState({\n    width: null,\n    height: null\n  });\n  const [rightLayout, setRightLayout] = React.useState({\n    width: null,\n    height: null\n  });\n  const timer = React.useRef(undefined);\n  const root = React.useRef(null);\n  const {\n    scale\n  } = theme.animation;\n  React.useImperativeHandle(ref, () => ({\n    focus: () => {\n      var _root$current;\n      return (_root$current = root.current) === null || _root$current === void 0 ? void 0 : _root$current.focus();\n    },\n    clear: () => {\n      var _root$current2;\n      return (_root$current2 = root.current) === null || _root$current2 === void 0 ? void 0 : _root$current2.clear();\n    },\n    setNativeProps: args => {\n      var _root$current3;\n      return (_root$current3 = root.current) === null || _root$current3 === void 0 ? void 0 : _root$current3.setNativeProps(args);\n    },\n    isFocused: () => {\n      var _root$current4;\n      return ((_root$current4 = root.current) === null || _root$current4 === void 0 ? void 0 : _root$current4.isFocused()) || false;\n    },\n    blur: () => {\n      var _root$current5;\n      return (_root$current5 = root.current) === null || _root$current5 === void 0 ? void 0 : _root$current5.blur();\n    },\n    forceFocus: () => {\n      var _root$current6;\n      return (_root$current6 = root.current) === null || _root$current6 === void 0 ? void 0 : _root$current6.focus();\n    },\n    setSelection: (start, end) => {\n      var _root$current7;\n      return (_root$current7 = root.current) === null || _root$current7 === void 0 ? void 0 : _root$current7.setSelection(start, end);\n    }\n  }));\n  React.useEffect(() => {\n    if (errorProp) {\n      Animated.timing(error, {\n        toValue: 1,\n        duration: FOCUS_ANIMATION_DURATION * scale,\n        useNativeDriver: true\n      }).start();\n    } else {\n      {\n        Animated.timing(error, {\n          toValue: 0,\n          duration: BLUR_ANIMATION_DURATION * scale,\n          useNativeDriver: true\n        }).start();\n      }\n    }\n  }, [errorProp, scale, error]);\n  React.useEffect(() => {\n    if (focused || !rest.label) {\n      if (rest.placeholder) {\n        timer.current = setTimeout(() => setDisplayPlaceholder(true), 50);\n      }\n    } else {\n      setDisplayPlaceholder(false);\n    }\n    return () => {\n      if (timer.current) {\n        clearTimeout(timer.current);\n      }\n    };\n  }, [focused, rest.label, rest.placeholder]);\n  React.useEffect(() => {\n    labeled.stopAnimation();\n    if (value || focused) {\n      Animated.timing(labeled, {\n        toValue: 0,\n        duration: BLUR_ANIMATION_DURATION * scale,\n        useNativeDriver: true\n      }).start();\n    } else {\n      Animated.timing(labeled, {\n        toValue: 1,\n        duration: FOCUS_ANIMATION_DURATION * scale,\n        useNativeDriver: true\n      }).start();\n    }\n  }, [focused, value, labeled, scale]);\n  const onLeftAffixLayoutChange = React.useCallback(event => {\n    const height = roundLayoutSize(event.nativeEvent.layout.height);\n    const width = roundLayoutSize(event.nativeEvent.layout.width);\n    if (width !== leftLayout.width || height !== leftLayout.height) {\n      setLeftLayout({\n        width,\n        height\n      });\n    }\n  }, [leftLayout.height, leftLayout.width]);\n  const onRightAffixLayoutChange = React.useCallback(event => {\n    const width = roundLayoutSize(event.nativeEvent.layout.width);\n    const height = roundLayoutSize(event.nativeEvent.layout.height);\n    if (width !== rightLayout.width || height !== rightLayout.height) {\n      setRightLayout({\n        width,\n        height\n      });\n    }\n  }, [rightLayout.height, rightLayout.width]);\n  const handleFocus = args => {\n    var _rest$onFocus;\n    if (disabled || !editable) {\n      return;\n    }\n    setFocused(true);\n    (_rest$onFocus = rest.onFocus) === null || _rest$onFocus === void 0 || _rest$onFocus.call(rest, args);\n  };\n  const handleBlur = args => {\n    var _rest$onBlur;\n    if (!editable) {\n      return;\n    }\n    setFocused(false);\n    (_rest$onBlur = rest.onBlur) === null || _rest$onBlur === void 0 || _rest$onBlur.call(rest, args);\n  };\n  const handleChangeText = value => {\n    var _rest$onChangeText;\n    if (!editable || disabled) {\n      return;\n    }\n    if (!isControlled) {\n      setUncontrolledValue(value);\n    }\n    (_rest$onChangeText = rest.onChangeText) === null || _rest$onChangeText === void 0 || _rest$onChangeText.call(rest, value);\n  };\n  const handleLayoutAnimatedText = React.useCallback(e => {\n    const width = roundLayoutSize(e.nativeEvent.layout.width);\n    const height = roundLayoutSize(e.nativeEvent.layout.height);\n    if (width !== labelLayout.width || height !== labelLayout.height) {\n      setLabelLayout({\n        width,\n        height,\n        measured: true\n      });\n    }\n  }, [labelLayout.height, labelLayout.width]);\n  const handleLabelTextLayout = React.useCallback(({\n    nativeEvent\n  }) => {\n    setLabelTextLayout({\n      width: nativeEvent.lines.reduce((acc, line) => acc + Math.ceil(line.width), 0)\n    });\n  }, []);\n  const handleInputContainerLayout = React.useCallback(({\n    nativeEvent: {\n      layout\n    }\n  }) => {\n    setInputContainerLayout({\n      width: layout.width\n    });\n  }, []);\n  const forceFocus = React.useCallback(() => {\n    var _root$current8;\n    return (_root$current8 = root.current) === null || _root$current8 === void 0 ? void 0 : _root$current8.focus();\n  }, []);\n  const {\n    maxFontSizeMultiplier = 1.5\n  } = rest;\n  const scaledLabel = !!(value || focused);\n  if (mode === 'outlined') {\n    return React.createElement(TextInputOutlined, _extends({\n      dense: dense,\n      disabled: disabled,\n      error: errorProp,\n      multiline: multiline,\n      editable: editable,\n      render: render\n    }, rest, {\n      theme: theme,\n      value: value,\n      parentState: {\n        labeled,\n        error,\n        focused,\n        displayPlaceholder,\n        value,\n        labelTextLayout,\n        labelLayout,\n        leftLayout,\n        rightLayout,\n        inputContainerLayout\n      },\n      innerRef: ref => {\n        root.current = ref;\n      },\n      onFocus: handleFocus,\n      forceFocus: forceFocus,\n      onBlur: handleBlur,\n      onChangeText: handleChangeText,\n      onLayoutAnimatedText: handleLayoutAnimatedText,\n      onInputLayout: handleInputContainerLayout,\n      onLabelTextLayout: handleLabelTextLayout,\n      onLeftAffixLayoutChange: onLeftAffixLayoutChange,\n      onRightAffixLayoutChange: onRightAffixLayoutChange,\n      maxFontSizeMultiplier: maxFontSizeMultiplier,\n      contentStyle: contentStyle,\n      scaledLabel: scaledLabel\n    }));\n  }\n  return React.createElement(TextInputFlat, _extends({\n    dense: dense,\n    disabled: disabled,\n    error: errorProp,\n    multiline: multiline,\n    editable: editable,\n    render: render\n  }, rest, {\n    theme: theme,\n    value: value,\n    parentState: {\n      labeled,\n      error,\n      focused,\n      displayPlaceholder,\n      value,\n      labelTextLayout,\n      labelLayout,\n      leftLayout,\n      rightLayout,\n      inputContainerLayout\n    },\n    innerRef: ref => {\n      root.current = ref;\n    },\n    onFocus: handleFocus,\n    forceFocus: forceFocus,\n    onBlur: handleBlur,\n    onInputLayout: handleInputContainerLayout,\n    onChangeText: handleChangeText,\n    onLayoutAnimatedText: handleLayoutAnimatedText,\n    onLabelTextLayout: handleLabelTextLayout,\n    onLeftAffixLayoutChange: onLeftAffixLayoutChange,\n    onRightAffixLayoutChange: onRightAffixLayoutChange,\n    maxFontSizeMultiplier: maxFontSizeMultiplier,\n    contentStyle: contentStyle,\n    scaledLabel: scaledLabel\n  }));\n});\nTextInput.Icon = TextInputIcon;\nTextInput.Affix = TextInputAffix;\nexport default TextInput;","map":{"version":3,"names":["React","Animated","NativeTextInput","TextInputAffix","TextInputIcon","TextInputFlat","TextInputOutlined","useInternalTheme","forwardRef","roundLayoutSize","BLUR_ANIMATION_DURATION","FOCUS_ANIMATION_DURATION","DefaultRenderer","props","createElement","TextInput","_ref","ref","mode","dense","disabled","error","errorProp","multiline","editable","contentStyle","render","theme","themeOverrides","rest","_objectWithoutPropertiesLoose","_excluded","isControlled","value","undefined","validInputValue","defaultValue","current","labeled","useRef","Value","focused","setFocused","useState","displayPlaceholder","setDisplayPlaceholder","uncontrolledValue","setUncontrolledValue","labelTextLayout","setLabelTextLayout","width","inputContainerLayout","setInputContainerLayout","labelLayout","setLabelLayout","measured","height","leftLayout","setLeftLayout","rightLayout","setRightLayout","timer","root","scale","animation","useImperativeHandle","focus","_root$current","clear","_root$current2","setNativeProps","args","_root$current3","isFocused","_root$current4","blur","_root$current5","forceFocus","_root$current6","setSelection","start","end","_root$current7","useEffect","timing","toValue","duration","useNativeDriver","label","placeholder","setTimeout","clearTimeout","stopAnimation","onLeftAffixLayoutChange","useCallback","event","nativeEvent","layout","onRightAffixLayoutChange","handleFocus","_rest$onFocus","onFocus","call","handleBlur","_rest$onBlur","onBlur","handleChangeText","_rest$onChangeText","onChangeText","handleLayoutAnimatedText","e","handleLabelTextLayout","lines","reduce","acc","line","Math","ceil","handleInputContainerLayout","_root$current8","maxFontSizeMultiplier","scaledLabel","_extends","parentState","innerRef","onLayoutAnimatedText","onInputLayout","onLabelTextLayout","Icon","Affix"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/react-native-paper/src/components/TextInput/TextInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n  Animated,\n  LayoutChangeEvent,\n  StyleProp,\n  TextInput as NativeTextInput,\n  TextStyle,\n  ViewStyle,\n  NativeSyntheticEvent,\n  TextLayoutEventData,\n} from 'react-native';\n\nimport TextInputAffix, {\n  Props as TextInputAffixProps,\n} from './Adornment/TextInputAffix';\nimport TextInputIcon, {\n  Props as TextInputIconProps,\n} from './Adornment/TextInputIcon';\nimport TextInputFlat from './TextInputFlat';\nimport TextInputOutlined from './TextInputOutlined';\nimport type { RenderProps, TextInputLabelProp } from './types';\nimport { useInternalTheme } from '../../core/theming';\nimport type { ThemeProp } from '../../types';\nimport { forwardRef } from '../../utils/forwardRef';\nimport { roundLayoutSize } from '../../utils/roundLayoutSize';\n\nconst BLUR_ANIMATION_DURATION = 180;\nconst FOCUS_ANIMATION_DURATION = 150;\n\nexport type Props = React.ComponentPropsWithRef<typeof NativeTextInput> & {\n  /**\n   * Mode of the TextInput.\n   * - `flat` - flat input with an underline.\n   * - `outlined` - input with an outline.\n   *\n   * In `outlined` mode, the background color of the label is derived from `colors?.background` in theme or the `backgroundColor` style.\n   * This component render TextInputOutlined or TextInputFlat based on that props\n   */\n  mode?: 'flat' | 'outlined';\n  /**\n   * The adornment placed on the left side of the input. It can be either `TextInput.Icon` or `TextInput.Affix`.\n   */\n  left?: React.ReactNode;\n  /**\n   * The adornment placed on the right side of the input. It can be either `TextInput.Icon` or `TextInput.Affix`.\n   */\n  right?: React.ReactNode;\n  /**\n   * If true, user won't be able to interact with the component.\n   */\n  disabled?: boolean;\n  /**\n   * The text or component to use for the floating label.\n   */\n  label?: TextInputLabelProp;\n  /**\n   * Placeholder for the input.\n   */\n  placeholder?: string;\n  /**\n   * Whether to style the TextInput with error style.\n   */\n  error?: boolean;\n  /**\n   * Callback that is called when the text input's text changes. Changed text is passed as an argument to the callback handler.\n   */\n  onChangeText?: Function;\n  /**\n   * Selection color of the input. On iOS, it sets both the selection color and cursor color.\n   * On Android, it sets only the selection color.\n   */\n  selectionColor?: string;\n  /**\n   * @platform Android only\n   * Cursor (or \"caret\") color of the input on Android.\n   * This property has no effect on iOS.\n   */\n  cursorColor?: string;\n  /**\n   * Inactive underline color of the input.\n   */\n  underlineColor?: string;\n  /**\n   * Active underline color of the input.\n   */\n  activeUnderlineColor?: string;\n  /**\n   * Inactive outline color of the input.\n   */\n  outlineColor?: string;\n  /**\n   * Active outline color of the input.\n   */\n  activeOutlineColor?: string;\n  /**\n   * Color of the text in the input.\n   */\n  textColor?: string;\n  /**\n   * Sets min height with densed layout. For `TextInput` in `flat` mode\n   * height is `64dp` or in dense layout - `52dp` with label or `40dp` without label.\n   * For `TextInput` in `outlined` mode\n   * height is `56dp` or in dense layout - `40dp` regardless of label.\n   * When you apply `height` prop in style the `dense` prop affects only `paddingVertical` inside `TextInput`\n   */\n  dense?: boolean;\n  /**\n   * Whether the input can have multiple lines.\n   */\n  multiline?: boolean;\n  /**\n   * @platform Android only\n   * The number of lines to show in the input (Android only).\n   */\n  numberOfLines?: number;\n  /**\n   * Callback that is called when the text input is focused.\n   */\n  onFocus?: (args: any) => void;\n  /**\n   * Callback that is called when the text input is blurred.\n   */\n  onBlur?: (args: any) => void;\n  /**\n   *\n   * Callback to render a custom input component such as `react-native-text-input-mask`\n   * instead of the default `TextInput` component from `react-native`.\n   *\n   * Example:\n   * ```js\n   * <TextInput\n   *   label=\"Phone number\"\n   *   render={props =>\n   *     <TextInputMask\n   *       {...props}\n   *       mask=\"+[00] [000] [000] [000]\"\n   *     />\n   *   }\n   * />\n   * ```\n   */\n  render?: (props: RenderProps) => React.ReactNode;\n  /**\n   * Value of the text input.\n   */\n  value?: string;\n  /**\n   * Pass `fontSize` prop to modify the font size inside `TextInput`.\n   * Pass `height` prop to set `TextInput` height. When `height` is passed,\n   * `dense` prop will affect only input's `paddingVertical`.\n   * Pass `paddingHorizontal` to modify horizontal padding.\n   * This can be used to get MD Guidelines v1 TextInput look.\n   */\n  style?: StyleProp<TextStyle>;\n  /**\n   * @optional\n   */\n  theme?: ThemeProp;\n  /**\n   * testID to be used on tests.\n   */\n  testID?: string;\n  /**\n   * Pass custom style directly to the input itself.\n   * Overrides input style\n   * Example: `paddingLeft`, `backgroundColor`\n   */\n  contentStyle?: StyleProp<TextStyle>;\n  /**\n   * Pass style to override the default style of outlined wrapper.\n   * Overrides style when mode is set to `outlined`\n   * Example: `borderRadius`, `borderColor`\n   */\n  outlineStyle?: StyleProp<ViewStyle>;\n  /**\n   * Pass style to override the default style of underlined wrapper.\n   * Overrides style when mode is set to `flat`\n   * Example: `borderRadius`, `borderColor`\n   */\n  underlineStyle?: StyleProp<ViewStyle>;\n};\n\ninterface CompoundedComponent\n  extends React.ForwardRefExoticComponent<\n    Props & React.RefAttributes<TextInputHandles>\n  > {\n  Icon: React.FunctionComponent<TextInputIconProps>;\n  Affix: React.FunctionComponent<Partial<TextInputAffixProps>>;\n}\n\ntype TextInputHandles = Pick<\n  NativeTextInput,\n  'focus' | 'clear' | 'blur' | 'isFocused' | 'setNativeProps' | 'setSelection'\n>;\n\nconst DefaultRenderer = (props: RenderProps) => <NativeTextInput {...props} />;\n\n/**\n * A component to allow users to input text.\n *\n * ## Usage\n * ```js\n * import * as React from 'react';\n * import { TextInput } from 'react-native-paper';\n *\n * const MyComponent = () => {\n *   const [text, setText] = React.useState(\"\");\n *\n *   return (\n *     <TextInput\n *       label=\"Email\"\n *       value={text}\n *       onChangeText={text => setText(text)}\n *     />\n *   );\n * };\n *\n * export default MyComponent;\n * ```\n *\n * @extends TextInput props https://reactnative.dev/docs/textinput#props\n */\nconst TextInput = forwardRef<TextInputHandles, Props>(\n  (\n    {\n      mode = 'flat',\n      dense = false,\n      disabled = false,\n      error: errorProp = false,\n      multiline = false,\n      editable = true,\n      contentStyle,\n      render = DefaultRenderer,\n      theme: themeOverrides,\n      ...rest\n    }: Props,\n    ref\n  ) => {\n    const theme = useInternalTheme(themeOverrides);\n    const isControlled = rest.value !== undefined;\n    const validInputValue = isControlled ? rest.value : rest.defaultValue;\n\n    const { current: labeled } = React.useRef<Animated.Value>(\n      new Animated.Value(validInputValue ? 0 : 1)\n    );\n    const { current: error } = React.useRef<Animated.Value>(\n      new Animated.Value(errorProp ? 1 : 0)\n    );\n    const [focused, setFocused] = React.useState<boolean>(false);\n    const [displayPlaceholder, setDisplayPlaceholder] =\n      React.useState<boolean>(false);\n    const [uncontrolledValue, setUncontrolledValue] = React.useState<\n      string | undefined\n    >(validInputValue);\n    // Use value from props instead of local state when input is controlled\n    const value = isControlled ? rest.value : uncontrolledValue;\n\n    const [labelTextLayout, setLabelTextLayout] = React.useState({\n      width: 33,\n    });\n\n    const [inputContainerLayout, setInputContainerLayout] = React.useState({\n      width: 65,\n    });\n\n    const [labelLayout, setLabelLayout] = React.useState<{\n      measured: boolean;\n      width: number;\n      height: number;\n    }>({\n      measured: false,\n      width: 0,\n      height: 0,\n    });\n    const [leftLayout, setLeftLayout] = React.useState<{\n      height: number | null;\n      width: number | null;\n    }>({\n      width: null,\n      height: null,\n    });\n    const [rightLayout, setRightLayout] = React.useState<{\n      height: number | null;\n      width: number | null;\n    }>({\n      width: null,\n      height: null,\n    });\n\n    const timer = React.useRef<NodeJS.Timeout | undefined>(undefined);\n    const root = React.useRef<NativeTextInput | undefined | null>(null);\n\n    const { scale } = theme.animation;\n\n    React.useImperativeHandle(ref, () => ({\n      focus: () => root.current?.focus(),\n      clear: () => root.current?.clear(),\n      setNativeProps: (args: Object) => root.current?.setNativeProps(args),\n      isFocused: () => root.current?.isFocused() || false,\n      blur: () => root.current?.blur(),\n      forceFocus: () => root.current?.focus(),\n      setSelection: (start: number, end: number) =>\n        root.current?.setSelection(start, end),\n    }));\n\n    React.useEffect(() => {\n      // When the input has an error, we wiggle the label and apply error styles\n      if (errorProp) {\n        // show error\n        Animated.timing(error, {\n          toValue: 1,\n          duration: FOCUS_ANIMATION_DURATION * scale,\n          // To prevent this - https://github.com/callstack/react-native-paper/issues/941\n          useNativeDriver: true,\n        }).start();\n      } else {\n        // hide error\n        {\n          Animated.timing(error, {\n            toValue: 0,\n            duration: BLUR_ANIMATION_DURATION * scale,\n            // To prevent this - https://github.com/callstack/react-native-paper/issues/941\n            useNativeDriver: true,\n          }).start();\n        }\n      }\n    }, [errorProp, scale, error]);\n\n    React.useEffect(() => {\n      // Show placeholder text only if the input is focused, or there's no label\n      // We don't show placeholder if there's a label because the label acts as placeholder\n      // When focused, the label moves up, so we can show a placeholder\n      if (focused || !rest.label) {\n        // If the user wants to use the contextMenu, when changing the placeholder, the contextMenu is closed\n        // This is a workaround to mitigate this behavior in scenarios where the placeholder is not specified.\n        if (rest.placeholder) {\n          // Display placeholder in a delay to offset the label animation\n          // If we show it immediately, they'll overlap and look ugly\n          timer.current = setTimeout(\n            () => setDisplayPlaceholder(true),\n            50\n          ) as unknown as NodeJS.Timeout;\n        }\n      } else {\n        // hidePlaceholder\n        setDisplayPlaceholder(false);\n      }\n\n      return () => {\n        if (timer.current) {\n          clearTimeout(timer.current);\n        }\n      };\n    }, [focused, rest.label, rest.placeholder]);\n\n    React.useEffect(() => {\n      labeled.stopAnimation();\n      // The label should be minimized if the text input is focused, or has text\n      // In minimized mode, the label moves up and becomes small\n      // workaround for animated regression for react native > 0.61\n      // https://github.com/callstack/react-native-paper/pull/1440\n      if (value || focused) {\n        // minimize label\n        Animated.timing(labeled, {\n          toValue: 0,\n          duration: BLUR_ANIMATION_DURATION * scale,\n          // To prevent this - https://github.com/callstack/react-native-paper/issues/941\n          useNativeDriver: true,\n        }).start();\n      } else {\n        // restore label\n        Animated.timing(labeled, {\n          toValue: 1,\n          duration: FOCUS_ANIMATION_DURATION * scale,\n          // To prevent this - https://github.com/callstack/react-native-paper/issues/941\n          useNativeDriver: true,\n        }).start();\n      }\n    }, [focused, value, labeled, scale]);\n\n    const onLeftAffixLayoutChange = React.useCallback(\n      (event: LayoutChangeEvent) => {\n        const height = roundLayoutSize(event.nativeEvent.layout.height);\n        const width = roundLayoutSize(event.nativeEvent.layout.width);\n\n        if (width !== leftLayout.width || height !== leftLayout.height) {\n          setLeftLayout({\n            width,\n            height,\n          });\n        }\n      },\n      [leftLayout.height, leftLayout.width]\n    );\n\n    const onRightAffixLayoutChange = React.useCallback(\n      (event: LayoutChangeEvent) => {\n        const width = roundLayoutSize(event.nativeEvent.layout.width);\n        const height = roundLayoutSize(event.nativeEvent.layout.height);\n\n        if (width !== rightLayout.width || height !== rightLayout.height) {\n          setRightLayout({\n            width,\n            height,\n          });\n        }\n      },\n      [rightLayout.height, rightLayout.width]\n    );\n\n    const handleFocus = (args: any) => {\n      if (disabled || !editable) {\n        return;\n      }\n\n      setFocused(true);\n\n      rest.onFocus?.(args);\n    };\n\n    const handleBlur = (args: Object) => {\n      if (!editable) {\n        return;\n      }\n\n      setFocused(false);\n      rest.onBlur?.(args);\n    };\n\n    const handleChangeText = (value: string) => {\n      if (!editable || disabled) {\n        return;\n      }\n\n      if (!isControlled) {\n        // Keep track of value in local state when input is not controlled\n        setUncontrolledValue(value);\n      }\n      rest.onChangeText?.(value);\n    };\n\n    const handleLayoutAnimatedText = React.useCallback(\n      (e: LayoutChangeEvent) => {\n        const width = roundLayoutSize(e.nativeEvent.layout.width);\n        const height = roundLayoutSize(e.nativeEvent.layout.height);\n\n        if (width !== labelLayout.width || height !== labelLayout.height) {\n          setLabelLayout({\n            width,\n            height,\n            measured: true,\n          });\n        }\n      },\n      [labelLayout.height, labelLayout.width]\n    );\n\n    const handleLabelTextLayout = React.useCallback(\n      ({ nativeEvent }: NativeSyntheticEvent<TextLayoutEventData>) => {\n        setLabelTextLayout({\n          width: nativeEvent.lines.reduce(\n            (acc, line) => acc + Math.ceil(line.width),\n            0\n          ),\n        });\n      },\n      []\n    );\n\n    const handleInputContainerLayout = React.useCallback(\n      ({ nativeEvent: { layout } }: LayoutChangeEvent) => {\n        setInputContainerLayout({\n          width: layout.width,\n        });\n      },\n      []\n    );\n\n    const forceFocus = React.useCallback(() => root.current?.focus(), []);\n\n    const { maxFontSizeMultiplier = 1.5 } = rest;\n\n    const scaledLabel = !!(value || focused);\n\n    if (mode === 'outlined') {\n      return (\n        <TextInputOutlined\n          dense={dense}\n          disabled={disabled}\n          error={errorProp}\n          multiline={multiline}\n          editable={editable}\n          render={render}\n          {...rest}\n          theme={theme}\n          value={value}\n          parentState={{\n            labeled,\n            error,\n            focused,\n            displayPlaceholder,\n            value,\n            labelTextLayout,\n            labelLayout,\n            leftLayout,\n            rightLayout,\n            inputContainerLayout,\n          }}\n          innerRef={(ref) => {\n            root.current = ref;\n          }}\n          onFocus={handleFocus}\n          forceFocus={forceFocus}\n          onBlur={handleBlur}\n          onChangeText={handleChangeText}\n          onLayoutAnimatedText={handleLayoutAnimatedText}\n          onInputLayout={handleInputContainerLayout}\n          onLabelTextLayout={handleLabelTextLayout}\n          onLeftAffixLayoutChange={onLeftAffixLayoutChange}\n          onRightAffixLayoutChange={onRightAffixLayoutChange}\n          maxFontSizeMultiplier={maxFontSizeMultiplier}\n          contentStyle={contentStyle}\n          scaledLabel={scaledLabel}\n        />\n      );\n    }\n\n    return (\n      <TextInputFlat\n        dense={dense}\n        disabled={disabled}\n        error={errorProp}\n        multiline={multiline}\n        editable={editable}\n        render={render}\n        {...rest}\n        theme={theme}\n        value={value}\n        parentState={{\n          labeled,\n          error,\n          focused,\n          displayPlaceholder,\n          value,\n          labelTextLayout,\n          labelLayout,\n          leftLayout,\n          rightLayout,\n          inputContainerLayout,\n        }}\n        innerRef={(ref) => {\n          root.current = ref;\n        }}\n        onFocus={handleFocus}\n        forceFocus={forceFocus}\n        onBlur={handleBlur}\n        onInputLayout={handleInputContainerLayout}\n        onChangeText={handleChangeText}\n        onLayoutAnimatedText={handleLayoutAnimatedText}\n        onLabelTextLayout={handleLabelTextLayout}\n        onLeftAffixLayoutChange={onLeftAffixLayoutChange}\n        onRightAffixLayoutChange={onRightAffixLayoutChange}\n        maxFontSizeMultiplier={maxFontSizeMultiplier}\n        contentStyle={contentStyle}\n        scaledLabel={scaledLabel}\n      />\n    );\n  }\n) as CompoundedComponent;\n// @component ./Adornment/TextInputIcon.tsx\nTextInput.Icon = TextInputIcon;\n\n// @component ./Adornment/TextInputAffix.tsx\n// @ts-ignore Types of property 'theme' are incompatible.\nTextInput.Affix = TextInputAffix;\n\nexport default TextInput;\n"],"mappings":"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","ignoreList":[]},"metadata":{"hasCjsExports":false},"sourceType":"module","externalDependencies":[]}