{"version":3,"file":"FormFields-NJ3Vc8BR.js","sources":["../../Client/shared/Constants/KeyName/KeyName.ts","../../Client/shared/Constants/KeyName/IsKeyName.ts","../../Client/node_modules/react-bootstrap/es/Glyphicon.js","../../Client/node_modules/react-bootstrap/es/ControlLabel.js","../../Client/node_modules/react-bootstrap/es/FormControlFeedback.js","../../Client/node_modules/react-bootstrap/es/FormControlStatic.js","../../Client/node_modules/react-bootstrap/es/FormControl.js","../../Client/node_modules/react-bootstrap/es/FormGroup.js","../../Client/node_modules/react-loading-skeleton/dist/index.js","../../Client/legacy/FormFields.tsx"],"sourcesContent":["export enum KeyName {\r\n Alt = 'Alt',\r\n ArrowDown = 'ArrowDown',\r\n ArrowLeft = 'ArrowLeft',\r\n ArrowRight = 'ArrowRight',\r\n ArrowUp = 'ArrowUp',\r\n Backspace = 'Backspace',\r\n Control = 'Control',\r\n Delete = 'Delete',\r\n Digit0 = '0',\r\n Digit1 = '1',\r\n Digit2 = '2',\r\n Digit3 = '3',\r\n Digit4 = '4',\r\n Digit5 = '5',\r\n Digit6 = '6',\r\n Digit7 = '7',\r\n Digit8 = '8',\r\n Digit9 = '9',\r\n Down = 'Down',\r\n Enter = 'Enter',\r\n Escape = 'Escape',\r\n F1 = 'F1',\r\n F2 = 'F2',\r\n F3 = 'F3',\r\n F4 = 'F4',\r\n F5 = 'F5',\r\n F6 = 'F6',\r\n F7 = 'F7',\r\n F8 = 'F8',\r\n F9 = 'F9',\r\n F10 = 'F10',\r\n F11 = 'F11',\r\n F12 = 'F12',\r\n KeyA = 'a',\r\n KeyB = 'b',\r\n KeyC = 'c',\r\n KeyD = 'd',\r\n KeyE = 'e',\r\n KeyF = 'f',\r\n KeyG = 'g',\r\n KeyH = 'h',\r\n KeyI = 'i',\r\n KeyJ = 'j',\r\n KeyK = 'k',\r\n KeyL = 'l',\r\n KeyM = 'm',\r\n KeyO = '0',\r\n KeyP = 'p',\r\n KeyQ = 'q',\r\n KeyR = 'r',\r\n KeyS = 's',\r\n KeyT = 't',\r\n KeyU = 'u',\r\n KeyV = 'v',\r\n KeyW = 'w',\r\n KeyX = 'x',\r\n KeyY = 'y',\r\n KeyZ = 'z',\r\n Left = 'Left',\r\n Right = 'Right',\r\n Shift = 'Shift',\r\n Space = ' ',\r\n Spacebar = 'Spacebar',\r\n Tab = 'Tab',\r\n Up = 'Up',\r\n}\r\n","import { KeyName } from '@shared/Constants/KeyName/KeyName';\r\n\r\nexport const isKeyName = (key: string, keyName: KeyName) => {\r\n switch (keyName) {\r\n case KeyName.Up:\r\n case KeyName.ArrowUp:\r\n return key === KeyName.Up || key === KeyName.ArrowUp;\r\n case KeyName.Down:\r\n case KeyName.ArrowDown:\r\n return key === KeyName.Down || key === KeyName.ArrowDown;\r\n case KeyName.Left:\r\n case KeyName.ArrowLeft:\r\n return key === KeyName.Left || key === KeyName.ArrowLeft;\r\n case KeyName.Right:\r\n case KeyName.ArrowRight:\r\n return key === KeyName.Right || key === KeyName.ArrowRight;\r\n case KeyName.Space:\r\n case KeyName.Spacebar:\r\n return key === KeyName.Space || key === KeyName.Spacebar;\r\n default:\r\n return key === keyName;\r\n }\r\n};\r\n","import _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { bsClass, getClassSet, prefix, splitBsProps } from './utils/bootstrapUtils';\nvar propTypes = {\n /**\n * An icon name without \"glyphicon-\" prefix. See e.g. http://getbootstrap.com/components/#glyphicons\n */\n glyph: PropTypes.string.isRequired\n};\n\nvar Glyphicon =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(Glyphicon, _React$Component);\n\n function Glyphicon() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = Glyphicon.prototype;\n\n _proto.render = function render() {\n var _extends2;\n\n var _this$props = this.props,\n glyph = _this$props.glyph,\n className = _this$props.className,\n props = _objectWithoutPropertiesLoose(_this$props, [\"glyph\", \"className\"]);\n\n var _splitBsProps = splitBsProps(props),\n bsProps = _splitBsProps[0],\n elementProps = _splitBsProps[1];\n\n var classes = _extends({}, getClassSet(bsProps), (_extends2 = {}, _extends2[prefix(bsProps, glyph)] = true, _extends2));\n\n return React.createElement(\"span\", _extends({}, elementProps, {\n className: classNames(className, classes)\n }));\n };\n\n return Glyphicon;\n}(React.Component);\n\nGlyphicon.propTypes = propTypes;\nexport default bsClass('glyphicon', Glyphicon);","import _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport warning from 'warning';\nimport { bsClass, getClassSet, splitBsProps } from './utils/bootstrapUtils';\nvar propTypes = {\n /**\n * Uses `controlId` from `<FormGroup>` if not explicitly specified.\n */\n htmlFor: PropTypes.string,\n srOnly: PropTypes.bool\n};\nvar defaultProps = {\n srOnly: false\n};\nvar contextTypes = {\n $bs_formGroup: PropTypes.object\n};\n\nvar ControlLabel =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(ControlLabel, _React$Component);\n\n function ControlLabel() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = ControlLabel.prototype;\n\n _proto.render = function render() {\n var formGroup = this.context.$bs_formGroup;\n var controlId = formGroup && formGroup.controlId;\n\n var _this$props = this.props,\n _this$props$htmlFor = _this$props.htmlFor,\n htmlFor = _this$props$htmlFor === void 0 ? controlId : _this$props$htmlFor,\n srOnly = _this$props.srOnly,\n className = _this$props.className,\n props = _objectWithoutPropertiesLoose(_this$props, [\"htmlFor\", \"srOnly\", \"className\"]);\n\n var _splitBsProps = splitBsProps(props),\n bsProps = _splitBsProps[0],\n elementProps = _splitBsProps[1];\n\n process.env.NODE_ENV !== \"production\" ? warning(controlId == null || htmlFor === controlId, '`controlId` is ignored on `<ControlLabel>` when `htmlFor` is specified.') : void 0;\n\n var classes = _extends({}, getClassSet(bsProps), {\n 'sr-only': srOnly\n });\n\n return React.createElement(\"label\", _extends({}, elementProps, {\n htmlFor: htmlFor,\n className: classNames(className, classes)\n }));\n };\n\n return ControlLabel;\n}(React.Component);\n\nControlLabel.propTypes = propTypes;\nControlLabel.defaultProps = defaultProps;\nControlLabel.contextTypes = contextTypes;\nexport default bsClass('control-label', ControlLabel);","import _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport Glyphicon from './Glyphicon';\nimport { bsClass, getClassSet, splitBsProps } from './utils/bootstrapUtils';\nvar defaultProps = {\n bsRole: 'feedback'\n};\nvar contextTypes = {\n $bs_formGroup: PropTypes.object\n};\n\nvar FormControlFeedback =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(FormControlFeedback, _React$Component);\n\n function FormControlFeedback() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = FormControlFeedback.prototype;\n\n _proto.getGlyph = function getGlyph(validationState) {\n switch (validationState) {\n case 'success':\n return 'ok';\n\n case 'warning':\n return 'warning-sign';\n\n case 'error':\n return 'remove';\n\n default:\n return null;\n }\n };\n\n _proto.renderDefaultFeedback = function renderDefaultFeedback(formGroup, className, classes, elementProps) {\n var glyph = this.getGlyph(formGroup && formGroup.validationState);\n\n if (!glyph) {\n return null;\n }\n\n return React.createElement(Glyphicon, _extends({}, elementProps, {\n glyph: glyph,\n className: classNames(className, classes)\n }));\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n className = _this$props.className,\n children = _this$props.children,\n props = _objectWithoutPropertiesLoose(_this$props, [\"className\", \"children\"]);\n\n var _splitBsProps = splitBsProps(props),\n bsProps = _splitBsProps[0],\n elementProps = _splitBsProps[1];\n\n var classes = getClassSet(bsProps);\n\n if (!children) {\n return this.renderDefaultFeedback(this.context.$bs_formGroup, className, classes, elementProps);\n }\n\n var child = React.Children.only(children);\n return React.cloneElement(child, _extends({}, elementProps, {\n className: classNames(child.props.className, className, classes)\n }));\n };\n\n return FormControlFeedback;\n}(React.Component);\n\nFormControlFeedback.defaultProps = defaultProps;\nFormControlFeedback.contextTypes = contextTypes;\nexport default bsClass('form-control-feedback', FormControlFeedback);","import _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport elementType from 'prop-types-extra/lib/elementType';\nimport { bsClass, getClassSet, splitBsProps } from './utils/bootstrapUtils';\nvar propTypes = {\n componentClass: elementType\n};\nvar defaultProps = {\n componentClass: 'p'\n};\n\nvar FormControlStatic =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(FormControlStatic, _React$Component);\n\n function FormControlStatic() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = FormControlStatic.prototype;\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.componentClass,\n className = _this$props.className,\n props = _objectWithoutPropertiesLoose(_this$props, [\"componentClass\", \"className\"]);\n\n var _splitBsProps = splitBsProps(props),\n bsProps = _splitBsProps[0],\n elementProps = _splitBsProps[1];\n\n var classes = getClassSet(bsProps);\n return React.createElement(Component, _extends({}, elementProps, {\n className: classNames(className, classes)\n }));\n };\n\n return FormControlStatic;\n}(React.Component);\n\nFormControlStatic.propTypes = propTypes;\nFormControlStatic.defaultProps = defaultProps;\nexport default bsClass('form-control-static', FormControlStatic);","import _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport elementType from 'prop-types-extra/lib/elementType';\nimport warning from 'warning';\nimport FormControlFeedback from './FormControlFeedback';\nimport FormControlStatic from './FormControlStatic';\nimport { prefix, bsClass, getClassSet, splitBsProps, bsSizes } from './utils/bootstrapUtils';\nimport { SIZE_MAP, Size } from './utils/StyleConfig';\nvar propTypes = {\n componentClass: elementType,\n\n /**\n * Only relevant if `componentClass` is `'input'`.\n */\n type: PropTypes.string,\n\n /**\n * Uses `controlId` from `<FormGroup>` if not explicitly specified.\n */\n id: PropTypes.string,\n\n /**\n * Attaches a ref to the `<input>` element. Only functions can be used here.\n *\n * ```js\n * <FormControl inputRef={ref => { this.input = ref; }} />\n * ```\n */\n inputRef: PropTypes.func\n};\nvar defaultProps = {\n componentClass: 'input'\n};\nvar contextTypes = {\n $bs_formGroup: PropTypes.object\n};\n\nvar FormControl =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(FormControl, _React$Component);\n\n function FormControl() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = FormControl.prototype;\n\n _proto.render = function render() {\n var formGroup = this.context.$bs_formGroup;\n var controlId = formGroup && formGroup.controlId;\n\n var _this$props = this.props,\n Component = _this$props.componentClass,\n type = _this$props.type,\n _this$props$id = _this$props.id,\n id = _this$props$id === void 0 ? controlId : _this$props$id,\n inputRef = _this$props.inputRef,\n className = _this$props.className,\n bsSize = _this$props.bsSize,\n props = _objectWithoutPropertiesLoose(_this$props, [\"componentClass\", \"type\", \"id\", \"inputRef\", \"className\", \"bsSize\"]);\n\n var _splitBsProps = splitBsProps(props),\n bsProps = _splitBsProps[0],\n elementProps = _splitBsProps[1];\n\n process.env.NODE_ENV !== \"production\" ? warning(controlId == null || id === controlId, '`controlId` is ignored on `<FormControl>` when `id` is specified.') : void 0; // input[type=\"file\"] should not have .form-control.\n\n var classes;\n\n if (type !== 'file') {\n classes = getClassSet(bsProps);\n } // If user provides a size, make sure to append it to classes as input-\n // e.g. if bsSize is small, it will append input-sm\n\n\n if (bsSize) {\n var size = SIZE_MAP[bsSize] || bsSize;\n classes[prefix({\n bsClass: 'input'\n }, size)] = true;\n }\n\n return React.createElement(Component, _extends({}, elementProps, {\n type: type,\n id: id,\n ref: inputRef,\n className: classNames(className, classes)\n }));\n };\n\n return FormControl;\n}(React.Component);\n\nFormControl.propTypes = propTypes;\nFormControl.defaultProps = defaultProps;\nFormControl.contextTypes = contextTypes;\nFormControl.Feedback = FormControlFeedback;\nFormControl.Static = FormControlStatic;\nexport default bsClass('form-control', bsSizes([Size.SMALL, Size.LARGE], FormControl));","import _extends from \"@babel/runtime-corejs2/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime-corejs2/helpers/esm/inheritsLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { bsClass, bsSizes, getClassSet, splitBsPropsAndOmit } from './utils/bootstrapUtils';\nimport { Size } from './utils/StyleConfig';\nimport ValidComponentChildren from './utils/ValidComponentChildren';\nvar propTypes = {\n /**\n * Sets `id` on `<FormControl>` and `htmlFor` on `<FormGroup.Label>`.\n */\n controlId: PropTypes.string,\n validationState: PropTypes.oneOf(['success', 'warning', 'error', null])\n};\nvar childContextTypes = {\n $bs_formGroup: PropTypes.object.isRequired\n};\n\nvar FormGroup =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(FormGroup, _React$Component);\n\n function FormGroup() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = FormGroup.prototype;\n\n _proto.getChildContext = function getChildContext() {\n var _this$props = this.props,\n controlId = _this$props.controlId,\n validationState = _this$props.validationState;\n return {\n $bs_formGroup: {\n controlId: controlId,\n validationState: validationState\n }\n };\n };\n\n _proto.hasFeedback = function hasFeedback(children) {\n var _this = this;\n\n return ValidComponentChildren.some(children, function (child) {\n return child.props.bsRole === 'feedback' || child.props.children && _this.hasFeedback(child.props.children);\n });\n };\n\n _proto.render = function render() {\n var _this$props2 = this.props,\n validationState = _this$props2.validationState,\n className = _this$props2.className,\n children = _this$props2.children,\n props = _objectWithoutPropertiesLoose(_this$props2, [\"validationState\", \"className\", \"children\"]);\n\n var _splitBsPropsAndOmit = splitBsPropsAndOmit(props, ['controlId']),\n bsProps = _splitBsPropsAndOmit[0],\n elementProps = _splitBsPropsAndOmit[1];\n\n var classes = _extends({}, getClassSet(bsProps), {\n 'has-feedback': this.hasFeedback(children)\n });\n\n if (validationState) {\n classes[\"has-\" + validationState] = true;\n }\n\n return React.createElement(\"div\", _extends({}, elementProps, {\n className: classNames(className, classes)\n }), children);\n };\n\n return FormGroup;\n}(React.Component);\n\nFormGroup.propTypes = propTypes;\nFormGroup.childContextTypes = childContextTypes;\nexport default bsClass('form-group', bsSizes([Size.LARGE, Size.SMALL], FormGroup));","'use client';\nimport React from 'react';\n\n/**\n * @internal\n */\nconst SkeletonThemeContext = React.createContext({});\n\n/* eslint-disable react/no-array-index-key */\nconst defaultEnableAnimation = true;\n// For performance & cleanliness, don't add any inline styles unless we have to\nfunction styleOptionsToCssProperties({ baseColor, highlightColor, width, height, borderRadius, circle, direction, duration, enableAnimation = defaultEnableAnimation, }) {\n const style = {};\n if (direction === 'rtl')\n style['--animation-direction'] = 'reverse';\n if (typeof duration === 'number')\n style['--animation-duration'] = `${duration}s`;\n if (!enableAnimation)\n style['--pseudo-element-display'] = 'none';\n if (typeof width === 'string' || typeof width === 'number')\n style.width = width;\n if (typeof height === 'string' || typeof height === 'number')\n style.height = height;\n if (typeof borderRadius === 'string' || typeof borderRadius === 'number')\n style.borderRadius = borderRadius;\n if (circle)\n style.borderRadius = '50%';\n if (typeof baseColor !== 'undefined')\n style['--base-color'] = baseColor;\n if (typeof highlightColor !== 'undefined')\n style['--highlight-color'] = highlightColor;\n return style;\n}\nfunction Skeleton({ count = 1, wrapper: Wrapper, className: customClassName, containerClassName, containerTestId, circle = false, style: styleProp, ...originalPropsStyleOptions }) {\n var _a, _b, _c;\n const contextStyleOptions = React.useContext(SkeletonThemeContext);\n const propsStyleOptions = { ...originalPropsStyleOptions };\n // DO NOT overwrite style options from the context if `propsStyleOptions`\n // has properties explicity set to undefined\n for (const [key, value] of Object.entries(originalPropsStyleOptions)) {\n if (typeof value === 'undefined') {\n delete propsStyleOptions[key];\n }\n }\n // Props take priority over context\n const styleOptions = {\n ...contextStyleOptions,\n ...propsStyleOptions,\n circle,\n };\n // `styleProp` has the least priority out of everything\n const style = {\n ...styleProp,\n ...styleOptionsToCssProperties(styleOptions),\n };\n let className = 'react-loading-skeleton';\n if (customClassName)\n className += ` ${customClassName}`;\n const inline = (_a = styleOptions.inline) !== null && _a !== void 0 ? _a : false;\n const elements = [];\n const countCeil = Math.ceil(count);\n for (let i = 0; i < countCeil; i++) {\n let thisStyle = style;\n if (countCeil > count && i === countCeil - 1) {\n // count is not an integer and we've reached the last iteration of\n // the loop, so add a \"fractional\" skeleton.\n //\n // For example, if count is 3.5, we've already added 3 full\n // skeletons, so now we add one more skeleton that is 0.5 times the\n // original width.\n const width = (_b = thisStyle.width) !== null && _b !== void 0 ? _b : '100%'; // 100% is the default since that's what's in the CSS\n const fractionalPart = count % 1;\n const fractionalWidth = typeof width === 'number'\n ? width * fractionalPart\n : `calc(${width} * ${fractionalPart})`;\n thisStyle = { ...thisStyle, width: fractionalWidth };\n }\n const skeletonSpan = (React.createElement(\"span\", { className: className, style: thisStyle, key: i }, \"\\u200C\"));\n if (inline) {\n elements.push(skeletonSpan);\n }\n else {\n // Without the <br />, the skeleton lines will all run together if\n // `width` is specified\n elements.push(React.createElement(React.Fragment, { key: i },\n skeletonSpan,\n React.createElement(\"br\", null)));\n }\n }\n return (React.createElement(\"span\", { className: containerClassName, \"data-testid\": containerTestId, \"aria-live\": \"polite\", \"aria-busy\": (_c = styleOptions.enableAnimation) !== null && _c !== void 0 ? _c : defaultEnableAnimation }, Wrapper\n ? elements.map((el, i) => React.createElement(Wrapper, { key: i }, el))\n : elements));\n}\n\nfunction SkeletonTheme({ children, ...styleOptions }) {\n return (React.createElement(SkeletonThemeContext.Provider, { value: styleOptions }, children));\n}\n\nexport { SkeletonTheme, Skeleton as default };\n","import { Svg } from '@legacy/Components/Svg';\r\nimport '@legacy/css/sass/CommonPartials/_all.scss';\r\nimport * as Constants from '@shared/Constants';\r\nimport Portal from '@webkit/components/portal';\r\nimport * as React from 'react';\r\nimport { forwardRef, KeyboardEvent, RefObject } from 'react';\r\nimport { Radio as BootstrapRadio, ControlLabel, FormControl, FormGroup } from 'react-bootstrap';\r\nimport { findDOMNode } from 'react-dom';\r\nimport Skeleton from 'react-loading-skeleton';\r\nimport { Tooltip, TooltipPlacement, TooltipSize } from './Components/Tooltip';\r\n\r\nexport interface HTMLInputEvent extends Event {\r\n target: HTMLInputElement & EventTarget;\r\n}\r\n\r\nexport interface IOption {\r\n value: string;\r\n text: string;\r\n}\r\n\r\ninterface IFieldWrapperProps {\r\n id?: string;\r\n name?: string;\r\n className?: string;\r\n inputClassName?: string;\r\n value: string;\r\n placeholder?: string;\r\n active: boolean;\r\n invalidate?: boolean;\r\n error?: string;\r\n onChange: Function;\r\n label: string;\r\n labelClassName?: string;\r\n type: string;\r\n maxLength?: number;\r\n readonly?: boolean;\r\n onBlur?: Function;\r\n onFocus?: Function;\r\n options?: IOption[];\r\n autoComplete?: string;\r\n tabIndex?: number;\r\n inlineError?: boolean;\r\n inlineErrorPlacement?: TooltipPlacement;\r\n autoFocus?: boolean;\r\n}\r\n\r\nexport class FieldWrapper extends React.Component<IFieldWrapperProps, {}> {\r\n render() {\r\n if (this.props.active)\r\n return (\r\n <FormGroup\r\n controlId={this.props.id}\r\n validationState={this.props.invalidate ? 'error' : undefined}\r\n className={this.props.className || ''}\r\n >\r\n <ControlLabel className={`input-field-label-md ${this.props.labelClassName || ''}`}>\r\n {this.props.label}\r\n </ControlLabel>\r\n {!this.props.inlineError && (\r\n <span\r\n className={`input-field-error-md ${this.props.error ? '' : 'input-field-error-hidden-md'}`}\r\n >\r\n {this.props.error}\r\n </span>\r\n )}\r\n {this.props.readonly ? (\r\n <span className='readonly'>{this.props.value}</span>\r\n ) : (\r\n <div className={`form-control-wrapper ${this.props.options ? 'select' : ''}`}>\r\n <FormControl\r\n componentClass={this.props.type === 'select' ? 'select' : 'input'}\r\n name={this.props.name}\r\n autoComplete={this.props.autoComplete === undefined ? 'on' : this.props.autoComplete}\r\n onChange={this.onChange.bind(this)}\r\n value={this.props.value}\r\n maxLength={this.props.maxLength}\r\n className={`input-field-md input-field-st ${this.props.inputClassName}`}\r\n placeholder={this.props.placeholder}\r\n type={this.props.type}\r\n tabIndex={this.props.tabIndex}\r\n autoFocus={this.props.autoFocus || false}\r\n onFocus={() => {\r\n if (!!this.props.onFocus) this.props.onFocus();\r\n }}\r\n onBlur={() => {\r\n if (!!this.props.onBlur) this.props.onBlur();\r\n }}\r\n children={\r\n this.props.options\r\n ? this.props.options.map(o => <option value={o.value}>{o.text}</option>)\r\n : undefined\r\n }\r\n />\r\n {this.props.error && (\r\n <InlineError\r\n title={''}\r\n error={this.props.error || ''}\r\n placement={this.props.inlineErrorPlacement || TooltipPlacement.Bottom}\r\n />\r\n )}\r\n {this.props.options ? <div className='arrow-selector'>▼</div> : <div />}\r\n </div>\r\n )}\r\n </FormGroup>\r\n );\r\n else return <span hidden />;\r\n }\r\n\r\n onChange(event) {\r\n let target = event.target as HTMLInputElement,\r\n maxLength = this.props.maxLength;\r\n if (maxLength && target.value.length > maxLength) target.value = target.value.substring(0, maxLength);\r\n this.props.onChange(event, this.props.name);\r\n }\r\n}\r\n\r\nexport type IconButtonProps = {\r\n onClick: () => any;\r\n iconString?: string;\r\n iconLocation?: string;\r\n className?: string;\r\n disabled?: boolean;\r\n alt: string;\r\n} & React.PropsWithChildren;\r\n\r\nexport class IconButton extends React.Component<IconButtonProps, {}> {\r\n componentDidMount() {\r\n if (!this.props.iconLocation && !this.props.iconString)\r\n throw new Error('Both icon and iconString are missing. At least one is required.');\r\n if (this.props.iconLocation && this.props.iconString)\r\n throw new Error('Both icon and iconString are set. Choose one or the other.');\r\n }\r\n\r\n render() {\r\n return (\r\n <button\r\n className={`secondary-button-cp ${this.props.className || ''}`}\r\n onClick={this.props.onClick.bind(this)}\r\n disabled={this.props.disabled}\r\n >\r\n {this.props.iconString && <i className={`fa fa-${this.props.iconString}`} />}\r\n {this.props.iconLocation && (\r\n <Svg className='secondary-button-icon-cp' path={this.props.iconLocation} alt={this.props.alt} />\r\n )}\r\n <span className='secondary-button-label-cp'>{this.props.children}</span>\r\n </button>\r\n );\r\n }\r\n}\r\n\r\nexport interface ILoadingButtonProps {\r\n label: string | JSX.Element;\r\n loading: boolean;\r\n className?: string;\r\n onClick?: () => void;\r\n disabled?: boolean;\r\n type?: 'button' | 'reset' | 'submit';\r\n id?: string;\r\n loadingLabel?: string;\r\n name?: string;\r\n value?: string;\r\n role?: string;\r\n}\r\n\r\nexport const LoadingButton = forwardRef((props: ILoadingButtonProps, ref: RefObject<HTMLButtonElement>) => {\r\n return (\r\n <button\r\n id={props.id}\r\n className={`loading-button-cp ${props.className} ${props.loading ? 'loading-cp' : ''} ${\r\n props.loadingLabel ? 'loading-with-label-cp' : ''\r\n }`}\r\n onClick={() => !props.loading && props.onClick && props.onClick()}\r\n disabled={props.disabled}\r\n type={props.type || 'button'}\r\n ref={ref}\r\n name={props.name}\r\n value={props.value}\r\n role={props.role}\r\n >\r\n <div className='loading-button-label-cp'>\r\n {props.loadingLabel && props.loading ? props.loadingLabel : props.label}\r\n </div>\r\n <div className='loading-button-loader-cp' />\r\n </button>\r\n );\r\n});\r\n\r\nexport type DefaultDropdownType = string | number | null;\r\n\r\nexport interface IDropdownProps<TValueType = DefaultDropdownType> {\r\n value: TValueType;\r\n onChange: (item: DropdownItem) => void;\r\n options: DropdownItem[];\r\n textInput?: boolean;\r\n autoComplete?: boolean;\r\n id?: string;\r\n name?: string;\r\n label?: string | JSX.Element;\r\n className?: string;\r\n labelClassName?: string;\r\n inputClassName?: string;\r\n selectorClassName?: string;\r\n placeholder?: string;\r\n error?: string | boolean | null;\r\n customError?: any;\r\n portalSelector?: string;\r\n portalId?: string;\r\n scrollable?: boolean;\r\n tabIndex?: number;\r\n icon?: any;\r\n disabled?: boolean;\r\n optionModifier?: (item: DropdownItem) => string;\r\n title?: string;\r\n loading?: boolean;\r\n onFocus?: () => void;\r\n onBlur?: () => void;\r\n}\r\n\r\ninterface IDropdownState {\r\n visible: boolean;\r\n left: number;\r\n top: number;\r\n width: number;\r\n selectedIndex: number;\r\n optionsRendered: DropdownItem[];\r\n value: string | number;\r\n}\r\n\r\nexport class Dropdown extends React.Component<IDropdownProps, IDropdownState> {\r\n mounted: boolean;\r\n moving: boolean;\r\n duration: number;\r\n component: any;\r\n form: any;\r\n onResizeHandler: () => void;\r\n onBodyClickHandler: () => void;\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.moving = false;\r\n this.duration = 175;\r\n\r\n let index = 0;\r\n\r\n if (props.value && props.options) {\r\n index = Math.max(\r\n index,\r\n props.options.findIndex(o => o.value === props.value)\r\n );\r\n }\r\n\r\n this.state = {\r\n visible: false,\r\n left: 0,\r\n top: 0,\r\n width: 0,\r\n selectedIndex: index,\r\n optionsRendered: this.props.options,\r\n value: this.props.value || '',\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.mounted = true;\r\n\r\n this.onResizeHandler = this.onResize.bind(this);\r\n window.addEventListener('resize', this.onResizeHandler);\r\n\r\n this.onBodyClickHandler = this.onBodyClick.bind(this);\r\n window.addEventListener('click', this.onBodyClickHandler, true);\r\n }\r\n\r\n componentWillUnmount() {\r\n this.mounted = false;\r\n\r\n window.removeEventListener('resize', this.onResizeHandler);\r\n window.removeEventListener('click', this.onBodyClickHandler, true);\r\n }\r\n\r\n componentDidUpdate(prevProps: IDropdownProps) {\r\n // In order to pre-assign the value of the drop-down, we want to set the 'value' and 'selectedIndex' state values based on the 'value' prop. But that\r\n // prop may not have its final value in the constructor or even in componentDidMount. So here we check if it has changed to something valid, and if so\r\n // we need to update the local state.\r\n if (this.props.value !== prevProps.value && this.props.value !== undefined && this.props.value !== null) {\r\n const newSelectedIndex = this.props.options.findIndex(\r\n (option: DropdownItem) => option.value === this.props.value?.toString().toLowerCase()\r\n );\r\n\r\n // If the 'value' state value is empty, we set it to the 'value' prop and set the 'selectedIndex' state value as appropriate. If we do have a\r\n // state value at this point, then we just set 'selectedIndex'.\r\n if (this.state.value === '') {\r\n this.setState({\r\n value: this.props.value || '',\r\n selectedIndex: newSelectedIndex,\r\n });\r\n } else {\r\n this.setState({\r\n selectedIndex: newSelectedIndex,\r\n });\r\n }\r\n }\r\n }\r\n\r\n onResize() {\r\n if (!this.mounted) {\r\n return;\r\n }\r\n\r\n this.setSelectorPosition();\r\n }\r\n\r\n onSelect(item: DropdownItem) {\r\n // We calculate the new selected index and update the state value so the user can select an option by pressing Enter after highlighting the\r\n // desired one\r\n const newSelectedIndex = this.props.options.findIndex((option: DropdownItem) => option.value === item.value);\r\n\r\n this.setState({\r\n visible: false,\r\n optionsRendered: this.props.options,\r\n value: item.value,\r\n selectedIndex: newSelectedIndex,\r\n });\r\n\r\n this.props.onChange(item);\r\n }\r\n\r\n onClick() {\r\n if (this.props.disabled) {\r\n return;\r\n }\r\n\r\n this.setSelectorPosition();\r\n\r\n this.setState({\r\n visible: true,\r\n value: '',\r\n });\r\n }\r\n\r\n onBodyClick() {\r\n if (!this.mounted) {\r\n return;\r\n }\r\n\r\n this.setState({\r\n visible: false,\r\n optionsRendered: this.props.options,\r\n });\r\n }\r\n\r\n handleKeyEvents(key: string) {\r\n if (!this.props.textInput) {\r\n return;\r\n }\r\n\r\n // We only want to allow valid keys since the key handler will put the value directly into the field when text input is enabled\r\n if (!this.isValidKey(key)) {\r\n return;\r\n }\r\n\r\n // If there have been prior character entries, we want to append the latest key instance to the state-tracked value instead of replacing it\r\n let keyInstance = this.state.value === '' ? key : this.state.value + key;\r\n\r\n // If the keystroke is a backspace, we want to remove the latest character entry instead of appending to the state-tracked value\r\n if (Constants.isKeyName(key, Constants.KeyName.Backspace)) {\r\n keyInstance = this.state.value.toString().slice(0, -1);\r\n }\r\n\r\n const optionMatches = this.checkOptionMatches(this.props.options, keyInstance);\r\n\r\n // We do a same-case comparison so the autocomplete matches no matter what case the user tries\r\n const optionMatchIndex = this.props.options.findIndex(option =>\r\n option.text ? option.text.toLowerCase().startsWith(keyInstance.toLowerCase()) : false\r\n );\r\n\r\n if (optionMatchIndex > -1) {\r\n this.setState({\r\n selectedIndex: 0,\r\n optionsRendered: optionMatches,\r\n value: keyInstance,\r\n });\r\n } else\r\n this.setState({\r\n value: keyInstance,\r\n });\r\n }\r\n\r\n onInputClick() {\r\n this.setState({\r\n visible: true,\r\n });\r\n }\r\n\r\n checkOptionMatches(options: DropdownItem[], keyInstance): DropdownItem[] {\r\n return options.filter(option =>\r\n option.text ? option.text.toLowerCase().startsWith(keyInstance.toString().toLowerCase()) : false\r\n );\r\n }\r\n\r\n onKeyDown(e: React.KeyboardEvent<FormGroup>) {\r\n const index = this.state.selectedIndex;\r\n const selectedItem = this.state.optionsRendered[index];\r\n\r\n if (Constants.isKeyName(e.key, Constants.KeyName.Tab)) {\r\n // This avoids an exception when the user has filtered the option list down to one item and they hit Tab while that item isn't highlighted. The\r\n // same logic is below when the Enter key is handled.\r\n if (selectedItem) {\r\n this.onSelect(this.state.optionsRendered[index]);\r\n }\r\n\r\n return;\r\n }\r\n\r\n if (!this.state.visible) {\r\n return;\r\n }\r\n\r\n e.preventDefault();\r\n\r\n if (Constants.isKeyName(e.key, Constants.KeyName.Up)) {\r\n this.setState({ selectedIndex: Math.max(0, index - 1) });\r\n } else if (Constants.isKeyName(e.key, Constants.KeyName.Down)) {\r\n this.setState({ selectedIndex: Math.min(this.props.options.length - 1, index + 1) });\r\n } else if (Constants.isKeyName(e.key, Constants.KeyName.Enter)) {\r\n if (selectedItem) {\r\n this.onSelect(this.props.options.find(option => option.value === selectedItem.value) as DropdownItem);\r\n }\r\n } else {\r\n this.handleKeyEvents(e.key);\r\n }\r\n }\r\n\r\n render() {\r\n // The maximum number of options in the dropdown panel before scrolling is required.\r\n const maxHeightOptionsCount: number = 7;\r\n\r\n const autoComplete =\r\n this.props.autoComplete === undefined || this.props.autoComplete ? 'on' : 'swyfft-no-autofill';\r\n\r\n return (\r\n <FormGroup\r\n ref={c => {\r\n this.component = c;\r\n }}\r\n controlId={this.props.id}\r\n validationState={this.props.error ? 'error' : undefined}\r\n className={`dropdown-form-cp ${this.props.className || ''}`}\r\n onKeyDown={this.onKeyDown.bind(this)}\r\n title={this.props.title}\r\n disabled={this.props.disabled}\r\n onFocus={this.props.onFocus}\r\n onBlur={this.props.onBlur}\r\n value={this.props.value || ''}\r\n autoComplete={autoComplete}\r\n >\r\n <input type='hidden' name={this.props.id} value={this.getTextFromValue(this.props.value)} />\r\n\r\n {this.props.textInput && (\r\n <input\r\n type='text'\r\n name={this.props.name ? this.props.name : this.props.id}\r\n value={this.getTextFromValue(this.state.value)}\r\n className='dropdown-overlay-cp'\r\n onClick={this.onClick.bind(this)}\r\n placeholder={this.props.placeholder}\r\n onFocus={this.onClick.bind(this)}\r\n onChange={e => this.setState({ value: e.target.value })}\r\n tabIndex={this.props.tabIndex}\r\n id={this.props.id}\r\n autoComplete={autoComplete}\r\n />\r\n )}\r\n\r\n {this.props.label && (\r\n <ControlLabel className={`dropdown-label-cp ${this.props.labelClassName || ''}`}>\r\n {this.props.label}\r\n </ControlLabel>\r\n )}\r\n\r\n {this.props.customError || (\r\n <span\r\n className={`input-field-error-md ${\r\n typeof this.props.error === 'string' && this.props.error\r\n ? ''\r\n : 'input-field-error-hidden-md'\r\n }`}\r\n >\r\n {this.props.error}\r\n </span>\r\n )}\r\n\r\n {this.props.loading ? (\r\n <Skeleton className='form-group-skeleton-cp' />\r\n ) : (\r\n <div\r\n className={`dropdown-value-cp ${this.props.disabled ? 'dropdown-value-disabled-cp' : ''} ${\r\n this.props.inputClassName || ''\r\n } ${this.props.value === '' ? 'dropdown-value-placeholder-cp' : ''} ${\r\n this.props.icon ? 'dropdown-value-custom-icon-cp' : 'dropdown-value-default-icon-cp'\r\n }`}\r\n onClick={this.onClick.bind(this)}\r\n tabIndex={this.props.tabIndex}\r\n id={this.props.id}\r\n >\r\n {this.props.value === '' ? this.props.placeholder : this.getTextFromValue(this.props.value)}\r\n {this.props.icon ? <div className='dropdown-custom-icon-cp'>{this.props.icon}</div> : undefined}\r\n </div>\r\n )}\r\n\r\n <Portal selector={this.props.portalSelector} id={this.props.portalId}>\r\n <div\r\n className={`dropdown-selector-cp ${this.props.selectorClassName || ''} ${\r\n this.state.visible ? 'dropdown-selector-shown-cp' : ''\r\n }\r\n ${\r\n (this.props.scrollable || this.props.options.length > maxHeightOptionsCount) &&\r\n 'dropdown-scrollable-cp'\r\n }`}\r\n style={{\r\n width: `${this.state.width}px`,\r\n left: `${this.state.left}px`,\r\n top: `${this.state.top}px`,\r\n }}\r\n >\r\n {this.state.optionsRendered.map((option, i) => (\r\n <span\r\n key={`${option.text || ''}${option.value}`}\r\n className={`dropdown-item-cp ${\r\n this.state.selectedIndex === i ? 'dropdown-item-hover-cp' : ''\r\n }`}\r\n id={`${option.id}`}\r\n onClick={this.onSelect.bind(this, option)}\r\n onMouseEnter={() => this.setState({ selectedIndex: i })}\r\n >\r\n {this.props.optionModifier\r\n ? this.props.optionModifier(option)\r\n : option.text === undefined\r\n ? option.value\r\n : option.text}\r\n </span>\r\n ))}\r\n </div>\r\n </Portal>\r\n </FormGroup>\r\n );\r\n }\r\n\r\n private isValidKey(key: string) {\r\n const regex = new RegExp(/^[A-Za-z0-9]$/);\r\n\r\n return regex.test(key) || Constants.isKeyName(key, Constants.KeyName.Backspace);\r\n }\r\n\r\n private getTextFromValue(value: string | number | null) {\r\n if (!value && value !== 0) {\r\n return '';\r\n }\r\n\r\n let found = this.props.options.filter(o => o.value.toString() === value.toString())[0];\r\n return found ? found.text || found.value : value;\r\n }\r\n\r\n private setSelectorPosition() {\r\n let dom = findDOMNode(this.component) as Element;\r\n if (dom) {\r\n let rect = dom.getBoundingClientRect();\r\n\r\n this.setState({\r\n top: rect.top + rect.height + (window as any).pageYOffset,\r\n left: rect.left + (window as any).pageXOffset,\r\n width: rect.width,\r\n });\r\n }\r\n }\r\n}\r\n\r\nexport class HomeownersDropdown extends React.Component<IDropdownProps, {}> {\r\n render() {\r\n return (\r\n <Dropdown\r\n {...this.props}\r\n className={`homeowners-dropdown-cp ${this.props.className || ''}`}\r\n selectorClassName={`homeowners-dropdown-selector-cp ${this.props.selectorClassName || ''}`}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/**\r\n * @deprecated The `DropdownItem` class should no longer be used. Instead, use `Select` and `SelectItem` from @webkit for new development.\r\n */\r\nexport class DropdownItem<TModel = any> {\r\n value: string | number;\r\n text?: string;\r\n id?: string;\r\n model?: TModel;\r\n\r\n constructor(value?: string | number, text?: string, id?: string, model?: TModel) {\r\n this.value = value || '';\r\n this.text = text;\r\n this.id = id || '';\r\n this.model = model;\r\n }\r\n\r\n static Empty: string = 'empty';\r\n}\r\n\r\nexport class Radio extends React.Component<\r\n { name: string; selected: boolean; label: string; onSelect: () => void; id?: string },\r\n {}\r\n> {\r\n render() {\r\n return (\r\n <BootstrapRadio\r\n id={this.props.id}\r\n className='radio-cp'\r\n name={this.props.name}\r\n inline\r\n checked={this.props.selected}\r\n onChange={this.props.onSelect.bind(this, true)}\r\n >\r\n <b dangerouslySetInnerHTML={{ __html: this.props.label }} />\r\n <span />\r\n </BootstrapRadio>\r\n );\r\n }\r\n}\r\n\r\nexport class TextInput extends React.Component<IFieldWrapperProps, {}> {\r\n render() {\r\n return <FieldWrapper {...this.props} className={`${this.props.className || ''} text-input-cp`} />;\r\n }\r\n}\r\n\r\ninterface ICheckboxProps {\r\n checked: boolean;\r\n onClick?: () => void;\r\n className?: string;\r\n id?: string;\r\n tabIndex?: number;\r\n}\r\n\r\nexport class Checkbox extends React.Component<ICheckboxProps, {}> {\r\n constructor(props: ICheckboxProps) {\r\n super(props);\r\n }\r\n\r\n handleKeyDown(event: KeyboardEvent<HTMLDivElement>) {\r\n if (event.key === 'Enter' && this.props.onClick) {\r\n this.props.onClick();\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n id={this.props.id}\r\n className={`checkbox-cp ${this.props.checked ? 'checked-cp' : ''} ${this.props.className || ''}`}\r\n onClick={this.props.onClick && this.props.onClick.bind(this)}\r\n tabIndex={this.props.tabIndex}\r\n onKeyDown={this.handleKeyDown.bind(this)}\r\n >\r\n <input type='hidden' name={this.props.id} value={this.props.checked?.toString() || 'false'} />\r\n\r\n <Svg className='checkbox-icon-cp' path={Constants.iconPaths.checkMark} alt='Check mark' />\r\n </div>\r\n );\r\n }\r\n}\r\n\r\nexport const InlineError: React.FunctionComponent<{\r\n error: string | null;\r\n title?: string;\r\n placement?: TooltipPlacement;\r\n className?: string;\r\n noToolTip?: boolean;\r\n errorHighlightBox?: string | null | undefined;\r\n homeownerStyle?: boolean;\r\n}> = ({ title, error, placement, className, noToolTip, errorHighlightBox, homeownerStyle }) => (\r\n <div className={`inline-error-wrapper-cp ${error ? 'inline-error-wrapper-visible-cp' : ''} ${className || ''}`}>\r\n <div className={`inline-error-icon-cp${homeownerStyle ? ' ho-error-icon-cp' : ''}`}>\r\n {noToolTip ? (\r\n <Svg path='/images/error-icon.svg' alt='Error Found' />\r\n ) : (\r\n <Tooltip\r\n message={error || ''}\r\n title={title}\r\n placement={placement || TooltipPlacement.BottomLeft}\r\n size={TooltipSize.Fill}\r\n highlightBox={errorHighlightBox}\r\n offset={-15}\r\n >\r\n <Svg path='/images/error-icon.svg' alt='Error Found' />\r\n </Tooltip>\r\n )}\r\n </div>\r\n </div>\r\n);\r\n\r\ninterface IErrorLineProps {\r\n error: string | null;\r\n emailAddress?: string;\r\n}\r\n\r\nexport class ErrorLine extends React.Component<IErrorLineProps, {}> {\r\n render() {\r\n const p = this.props;\r\n const email = p.emailAddress;\r\n return (\r\n <span>\r\n {p.error ? (\r\n <div className='error-message-cp'>\r\n {p.error}\r\n {email ? <a href={`mailto:${email}`}>{email}</a> : null}\r\n </div>\r\n ) : null}\r\n </span>\r\n );\r\n }\r\n}\r\n"],"names":["KeyName","isKeyName","key","keyName","propTypes","PropTypes","Glyphicon","_React$Component","_inheritsLoose","_proto","_extends2","_this$props","glyph","className","props","_objectWithoutPropertiesLoose","_splitBsProps","splitBsProps","bsProps","elementProps","classes","_extends","getClassSet","prefix","React","classNames","Glyphicon$1","bsClass","defaultProps","contextTypes","ControlLabel","formGroup","controlId","_this$props$htmlFor","htmlFor","srOnly","ControlLabel$1","FormControlFeedback","validationState","children","child","FormControlFeedback$1","elementType","FormControlStatic","Component","FormControlStatic$1","FormControl","type","_this$props$id","id","inputRef","bsSize","size","SIZE_MAP","FormControl$1","bsSizes","Size","childContextTypes","FormGroup","_this","ValidComponentChildren","_this$props2","_splitBsPropsAndOmit","splitBsPropsAndOmit","FormGroup$1","SkeletonThemeContext","defaultEnableAnimation","styleOptionsToCssProperties","baseColor","highlightColor","width","height","borderRadius","circle","direction","duration","enableAnimation","style","Skeleton","count","Wrapper","customClassName","containerClassName","containerTestId","styleProp","originalPropsStyleOptions","_a","_b","_c","contextStyleOptions","propsStyleOptions","value","styleOptions","inline","elements","countCeil","i","thisStyle","fractionalPart","fractionalWidth","skeletonSpan","el","FieldWrapper","React.Component","jsxs","jsx","InlineError","TooltipPlacement","event","target","maxLength","IconButton","Svg","LoadingButton","forwardRef","ref","Dropdown","__publicField","index","o","prevProps","newSelectedIndex","option","item","keyInstance","Constants.isKeyName","Constants.KeyName","optionMatches","options","selectedItem","autoComplete","c","e","Portal","found","dom","findDOMNode","rect","HomeownersDropdown","DropdownItem","text","model","TextInput","Checkbox","Constants.iconPaths","title","error","placement","noToolTip","errorHighlightBox","homeownerStyle","Tooltip","TooltipSize","ErrorLine","p","email"],"mappings":"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","x_google_ignoreList":[2,3,4,5,6,7,8]}