}}`.\n * Note that `wrapperStyle` is applied before `wrapperProps`, so the latter\n * will win if it contains a `style` entry.\n */\n wrapperStyle: PropTypes.object,\n /**\n * Whether or not to automatically highlight the top match in the dropdown\n * menu.\n */\n autoHighlight: PropTypes.bool,\n /**\n * Whether or not to automatically select the highlighted item when the\n * ` ` loses focus.\n */\n selectOnBlur: PropTypes.bool,\n /**\n * Arguments: `isOpen: Boolean`\n *\n * Invoked every time the dropdown menu's visibility changes (i.e. every\n * time it is displayed/hidden).\n */\n onMenuVisibilityChange: PropTypes.func,\n /**\n * Used to override the internal logic which displays/hides the dropdown\n * menu. This is useful if you want to force a certain state based on your\n * UX/business logic. Use it together with `onMenuVisibilityChange` for\n * fine-grained control over the dropdown menu dynamics.\n */\n open: PropTypes.bool,\n debug: PropTypes.bool\n};\nAutocomplete.defaultProps = {\n value: '',\n wrapperProps: {},\n wrapperStyle: {\n display: 'inline-block'\n },\n inputProps: {},\n renderInput: function renderInput(props) {\n return React.createElement('input', props);\n },\n onChange: function onChange() {},\n onSelect: function onSelect() {},\n isItemSelectable: function isItemSelectable() {\n return true;\n },\n renderMenu: function renderMenu(items, value, style) {\n return React.createElement('div', { style: _extends({}, style, this.menuStyle), children: items });\n },\n\n menuStyle: {\n borderRadius: '3px',\n boxShadow: '0 2px 12px rgba(0, 0, 0, 0.1)',\n background: 'rgba(255, 255, 255, 0.9)',\n padding: '2px 0',\n fontSize: '90%',\n position: 'fixed',\n overflow: 'auto',\n maxHeight: '50%' },\n autoHighlight: true,\n selectOnBlur: false,\n onMenuVisibilityChange: function onMenuVisibilityChange() {}\n};\nAutocomplete.keyDownHandlers = {\n ArrowDown: function ArrowDown(event) {\n event.preventDefault();\n var items = this.getFilteredItems(this.props);\n if (!items.length) return;\n var highlightedIndex = this.state.highlightedIndex;\n\n var index = highlightedIndex === null ? -1 : highlightedIndex;\n for (var i = 0; i < items.length; i++) {\n var p = (index + i + 1) % items.length;\n if (this.props.isItemSelectable(items[p])) {\n index = p;\n break;\n }\n }\n if (index > -1 && index !== highlightedIndex) {\n this.setState({\n highlightedIndex: index,\n isOpen: true\n });\n }\n },\n ArrowUp: function ArrowUp(event) {\n event.preventDefault();\n var items = this.getFilteredItems(this.props);\n if (!items.length) return;\n var highlightedIndex = this.state.highlightedIndex;\n\n var index = highlightedIndex === null ? items.length : highlightedIndex;\n for (var i = 0; i < items.length; i++) {\n var p = (index - (1 + i) + items.length) % items.length;\n if (this.props.isItemSelectable(items[p])) {\n index = p;\n break;\n }\n }\n if (index !== items.length) {\n this.setState({\n highlightedIndex: index,\n isOpen: true\n });\n }\n },\n Enter: function Enter(event) {\n var _this7 = this;\n\n // Key code 229 is used for selecting items from character selectors (Pinyin, Kana, etc)\n if (event.keyCode !== 13) return;\n // In case the user is currently hovering over the menu\n this.setIgnoreBlur(false);\n if (!this.isOpen()) {\n // menu is closed so there is no selection to accept -> do nothing\n return;\n } else if (this.state.highlightedIndex == null) {\n // input has focus but no menu item is selected + enter is hit -> close the menu, highlight whatever's in input\n this.setState({\n isOpen: false\n }, function () {\n _this7.refs.input.select();\n });\n } else {\n // text entered + menu item has been highlighted + enter is hit -> update value to that of selected menu item, close the menu\n event.preventDefault();\n var item = this.getFilteredItems(this.props)[this.state.highlightedIndex];\n var value = this.props.getItemValue(item);\n this.setState({\n isOpen: false,\n highlightedIndex: null\n }, function () {\n //this.refs.input.focus() // TODO: file issue\n _this7.refs.input.setSelectionRange(value.length, value.length);\n _this7.props.onSelect(value, item);\n });\n }\n },\n Escape: function Escape() {\n // In case the user is currently hovering over the menu\n this.setIgnoreBlur(false);\n this.setState({\n highlightedIndex: null,\n isOpen: false\n });\n },\n Tab: function Tab() {\n // In case the user is currently hovering over the menu\n this.setIgnoreBlur(false);\n }\n};\n\n\nmodule.exports = Autocomplete;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-autocomplete/build/lib/Autocomplete.js\n// module id = 289\n// module chunks = 0","module.exports = require('./lib/dom-scroll-into-view');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/dom-scroll-into-view/index.js\n// module id = 290\n// module chunks = 0","var util = require('./util');\n\nfunction scrollIntoView(elem, container, config) {\n config = config || {};\n // document 归一化到 window\n if (container.nodeType === 9) {\n container = util.getWindow(container);\n }\n\n var allowHorizontalScroll = config.allowHorizontalScroll;\n var onlyScrollIfNeeded = config.onlyScrollIfNeeded;\n var alignWithTop = config.alignWithTop;\n var alignWithLeft = config.alignWithLeft;\n\n allowHorizontalScroll = allowHorizontalScroll === undefined ? true : allowHorizontalScroll;\n\n var isWin = util.isWindow(container);\n var elemOffset = util.offset(elem);\n var eh = util.outerHeight(elem);\n var ew = util.outerWidth(elem);\n var containerOffset, ch, cw, containerScroll,\n diffTop, diffBottom, win,\n winScroll, ww, wh;\n\n if (isWin) {\n win = container;\n wh = util.height(win);\n ww = util.width(win);\n winScroll = {\n left: util.scrollLeft(win),\n top: util.scrollTop(win)\n };\n // elem 相对 container 可视视窗的距离\n diffTop = {\n left: elemOffset.left - winScroll.left,\n top: elemOffset.top - winScroll.top\n };\n diffBottom = {\n left: elemOffset.left + ew - (winScroll.left + ww),\n top: elemOffset.top + eh - (winScroll.top + wh)\n };\n containerScroll = winScroll;\n } else {\n containerOffset = util.offset(container);\n ch = container.clientHeight;\n cw = container.clientWidth;\n containerScroll = {\n left: container.scrollLeft,\n top: container.scrollTop\n };\n // elem 相对 container 可视视窗的距离\n // 注意边框, offset 是边框到根节点\n diffTop = {\n left: elemOffset.left - (containerOffset.left +\n (parseFloat(util.css(container, 'borderLeftWidth')) || 0)),\n top: elemOffset.top - (containerOffset.top +\n (parseFloat(util.css(container, 'borderTopWidth')) || 0))\n };\n diffBottom = {\n left: elemOffset.left + ew -\n (containerOffset.left + cw +\n (parseFloat(util.css(container, 'borderRightWidth')) || 0)),\n top: elemOffset.top + eh -\n (containerOffset.top + ch +\n (parseFloat(util.css(container, 'borderBottomWidth')) || 0))\n };\n }\n\n if (diffTop.top < 0 || diffBottom.top > 0) {\n // 强制向上\n if (alignWithTop === true) {\n util.scrollTop(container, containerScroll.top + diffTop.top);\n } else if (alignWithTop === false) {\n util.scrollTop(container, containerScroll.top + diffBottom.top);\n } else {\n // 自动调整\n if (diffTop.top < 0) {\n util.scrollTop(container, containerScroll.top + diffTop.top);\n } else {\n util.scrollTop(container, containerScroll.top + diffBottom.top);\n }\n }\n } else {\n if (!onlyScrollIfNeeded) {\n alignWithTop = alignWithTop === undefined ? true : !!alignWithTop;\n if (alignWithTop) {\n util.scrollTop(container, containerScroll.top + diffTop.top);\n } else {\n util.scrollTop(container, containerScroll.top + diffBottom.top);\n }\n }\n }\n\n if (allowHorizontalScroll) {\n if (diffTop.left < 0 || diffBottom.left > 0) {\n // 强制向上\n if (alignWithLeft === true) {\n util.scrollLeft(container, containerScroll.left + diffTop.left);\n } else if (alignWithLeft === false) {\n util.scrollLeft(container, containerScroll.left + diffBottom.left);\n } else {\n // 自动调整\n if (diffTop.left < 0) {\n util.scrollLeft(container, containerScroll.left + diffTop.left);\n } else {\n util.scrollLeft(container, containerScroll.left + diffBottom.left);\n }\n }\n } else {\n if (!onlyScrollIfNeeded) {\n alignWithLeft = alignWithLeft === undefined ? true : !!alignWithLeft;\n if (alignWithLeft) {\n util.scrollLeft(container, containerScroll.left + diffTop.left);\n } else {\n util.scrollLeft(container, containerScroll.left + diffBottom.left);\n }\n }\n }\n }\n}\n\nmodule.exports = scrollIntoView;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/dom-scroll-into-view/lib/dom-scroll-into-view.js\n// module id = 291\n// module chunks = 0","var RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\n\nfunction getClientPosition(elem) {\n var box, x, y;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = box.left;\n y = box.top;\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n\n return {left: x, top: y};\n}\n\nfunction getScroll(w, top) {\n var ret = w['page' + (top ? 'Y' : 'X') + 'Offset'];\n var method = 'scroll' + (top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n //ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n //quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\n\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\n\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\n\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\nfunction _getComputedStyle(elem, name, computedStyle) {\n var val = '';\n var d = elem.ownerDocument;\n\n // https://github.com/kissyteam/kissy/issues/61\n if ((computedStyle = (computedStyle || d.defaultView.getComputedStyle(elem, null)))) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n\n return val;\n}\n\nvar _RE_NUM_NO_PX = new RegExp('^(' + RE_NUM + ')(?!px)[a-z%]+$', 'i');\nvar RE_POS = /^(top|right|bottom|left)$/,\n CURRENT_STYLE = 'currentStyle',\n RUNTIME_STYLE = 'runtimeStyle',\n LEFT = 'left',\n PX = 'px';\n\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style,\n left = style[LEFT],\n rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : (ret || 0);\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\n\nvar getComputedStyleX;\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setOffset(elem, offset) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n\n var old = getOffset(elem),\n ret = {},\n current, key;\n\n for (key in offset) {\n current = parseFloat(css(elem, key)) || 0;\n ret[key] = current + offset[key] - old[key];\n }\n css(elem, ret);\n}\n\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\n\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\n\nvar BOX_MODELS = ['margin', 'border', 'padding'],\n CONTENT_INDEX = -1,\n PADDING_INDEX = 2,\n BORDER_INDEX = 1,\n MARGIN_INDEX = 0;\n\nfunction swap(elem, options, callback) {\n var old = {},\n style = elem.style,\n name;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n old[name] = style[name];\n style[name] = options[name];\n }\n\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n style[name] = old[name];\n }\n}\n\nfunction getPBMWidth(elem, props, which) {\n var value = 0, prop, j, i;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp;\n if (prop === 'border') {\n cssProp = prop + which[i] + 'Width';\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /*jshint eqeqeq:false*/\n return obj != null && obj == obj.window;\n}\n\nvar domUtils = {};\n\neach(['Width', 'Height'], function (name) {\n domUtils['doc' + name] = function (refWin) {\n var d = refWin.document;\n return Math.max(\n //firefox chrome documentElement.scrollHeight< body.scrollHeight\n //ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement['scroll' + name],\n //quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body['scroll' + name],\n domUtils['viewport' + name](d));\n };\n\n domUtils['viewport' + name] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = 'client' + name,\n doc = win.document,\n body = doc.body,\n documentElement = doc.documentElement,\n documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return doc.compatMode === 'CSS1Compat' && documentElementProp ||\n body && body[prop] || documentElementProp;\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, extra) {\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'],\n borderBoxValue = name === 'width' ? elem.offsetWidth : elem.offsetHeight;\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem, computedStyle);\n var cssBoxValue = 0;\n if (borderBoxValue == null || borderBoxValue <= 0) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (cssBoxValue == null || (Number(cssBoxValue)) < 0) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = parseFloat(cssBoxValue) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'],\n which, computedStyle);\n } else {\n return cssBoxValue;\n }\n } else if (borderBoxValueOrIsBorderBox) {\n return val + (extra === BORDER_INDEX ? 0 :\n (extra === PADDING_INDEX ?\n -getPBMWidth(elem, ['border'], which, computedStyle) :\n getPBMWidth(elem, ['margin'], which, computedStyle)));\n } else {\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra),\n which, computedStyle);\n }\n}\n\nvar cssShow = {position: 'absolute', visibility: 'hidden', display: 'block'};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay(elem) {\n var val, args = arguments;\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\n\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils['outer' + first] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n\n domUtils[name] = function (elem, val) {\n if (val !== undefined) {\n if (elem) {\n var computedStyle = getComputedStyleX(elem);\n var isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which, computedStyle);\n }\n return css(elem, name, val);\n }\n return;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\n\nfunction css(el, name, value) {\n if (typeof name === 'object') {\n for (var i in name) {\n css(el, i, name[i]);\n }\n return;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = value + 'px';\n }\n el.style[name] = value;\n } else {\n return getComputedStyleX(el, name);\n }\n}\n\nfunction mix(to, from) {\n for (var i in from) {\n to[i] = from[i];\n }\n return to;\n}\n\nvar utils = module.exports = {\n getWindow: function (node) {\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n offset: function (el, value) {\n if (typeof value !== 'undefined') {\n setOffset(el, value);\n } else {\n return getOffset(el);\n }\n },\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function (obj) {\n var ret = {};\n for (var i in obj) {\n ret[i] = obj[i];\n }\n var overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n return ret;\n },\n mix: mix,\n scrollLeft: function (w, v) {\n if (isWindow(w)) {\n if (v === undefined) {\n return getScrollLeft(w);\n } else {\n window.scrollTo(v, getScrollTop(w));\n }\n } else {\n if (v === undefined) {\n return w.scrollLeft;\n } else {\n w.scrollLeft = v;\n }\n }\n },\n scrollTop: function (w, v) {\n if (isWindow(w)) {\n if (v === undefined) {\n return getScrollTop(w);\n } else {\n window.scrollTo(getScrollLeft(w), v);\n }\n } else {\n if (v === undefined) {\n return w.scrollTop;\n } else {\n w.scrollTop = v;\n }\n }\n },\n merge: function () {\n var ret = {};\n for (var i = 0; i < arguments.length; i++) {\n utils.mix(ret, arguments[i]);\n }\n return ret;\n },\n viewportWidth: 0,\n viewportHeight: 0\n};\n\nmix(utils, domUtils);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/dom-scroll-into-view/lib/util.js\n// module id = 292\n// module chunks = 0","export const emailDomains = [\r\n\t\"yahoo.com\",\r\n\t\"gmail.com\", \r\n\t\"google.com\", \r\n\t\"hotmail.com\", \r\n\t\"me.com\", \r\n\t\"aol.com\", \r\n\t\"mac.com\", \r\n\t\"live.com\", \r\n\t\"comcast.com\", \r\n\t\"googlemail.com\", \r\n\t\"msn.com\", \r\n\t\"hotmail.co.uk\", \r\n\t\"yahoo.co.uk\", \r\n\t\"facebook.com\", \r\n\t\"verizon.net\", \r\n\t\"att.net\", \r\n\t\"gmz.com\", \r\n\t\"mail.com\"\r\n];\n\n\n// WEBPACK FOOTER //\n// ./src/utils/emailDomains.js","import React from 'react';\r\n\r\nexport const SelectInput = (props) => (\r\n\t\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t{props.required ? ('*') : (false)}\r\n\t\t \r\n\t\t
\r\n\t\t\r\n\t\t\t\t \r\n\t\t\t\t\tSelect an option\r\n\t\t\t\t \r\n\t\t\t{props.options.map(option => (\r\n\t\t\t\t\r\n\t\t\t\t\t\t{option.label}\r\n\t\t\t\t \t\r\n\t\t\t))}\r\n\t\t \r\n\t\t\r\n\t\t\t{props.errMessage}
\r\n\t\t \r\n\t \r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/BasicForm/SelectInput.js","import React from 'react';\r\n\r\nexport const PrimaryFormNav = ({prevLabel, nextLabel, handlePrevious, handleNext, options}) => (\r\n\t\r\n)\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/PrimaryFormNav/PrimaryFormNav.js","import React, { Component } from \"react\";\r\nimport { RadioBinary, RadioBinaryHeader } from \"../../components/RadioBinary\";\r\nimport { TextInput } from \"../../components/BasicForm\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { RadioMultiButton } from \"../../components/RadioMultiButton\";\r\nimport { DateField } from \"../../components/DateField\";\r\n\r\nclass WorkHistory extends Component {\r\n state = {\r\n heading: \"Your VADOC Work History\",\r\n showProgressBar: true,\r\n pageId: \"visitor-work-history\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default WorkHistory;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/WorkHistory/WorkHistory.js","import React from 'react';\r\nimport DayPickerInput from 'react-day-picker/DayPickerInput';\r\nimport moment from 'moment';\r\n\r\nexport const DateField = (props) => (\r\n\t\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t{props.required ? ('*') : (false)}\r\n\t\t \r\n\t\t {props.handleDateInput(date, props.name)}} />\r\n\t\t \r\n\t\t\r\n \t\t{props.errMessage}
\r\n \t \r\n\t \r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/DateField/DateField.js","/*\n Used to import DayPickerInput. e.g. `import DayPickerInput from 'react-day-picker/DayPickerInput'`\n*/\n\n/* eslint-disable no-var */\n/* eslint-env node */\n\nvar DayPickerInput = require('./lib/src/DayPickerInput');\n\nmodule.exports = DayPickerInput;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-day-picker/DayPickerInput.js\n// module id = 299\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.HIDE_TIMEOUT = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports.OverlayComponent = OverlayComponent;\nexports.defaultFormat = defaultFormat;\nexports.defaultParse = defaultParse;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _DayPicker = require('./DayPicker');\n\nvar _DayPicker2 = _interopRequireDefault(_DayPicker);\n\nvar _DateUtils = require('./DateUtils');\n\nvar _ModifiersUtils = require('./ModifiersUtils');\n\nvar _keys = require('./keys');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\n// When clicking on a day cell, overlay will be hidden after this timeout\nvar HIDE_TIMEOUT = exports.HIDE_TIMEOUT = 100;\n\n/**\n * The default component used as Overlay.\n *\n * @param {Object} props\n */\nfunction OverlayComponent(_ref) {\n var input = _ref.input,\n selectedDay = _ref.selectedDay,\n month = _ref.month,\n children = _ref.children,\n classNames = _ref.classNames,\n props = _objectWithoutProperties(_ref, ['input', 'selectedDay', 'month', 'children', 'classNames']);\n\n return _react2.default.createElement(\n 'div',\n _extends({ className: classNames.overlayWrapper }, props),\n _react2.default.createElement(\n 'div',\n { className: classNames.overlay },\n children\n )\n );\n}\n\nOverlayComponent.propTypes = process.env.NODE_ENV !== \"production\" ? {\n input: _propTypes2.default.any,\n selectedDay: _propTypes2.default.any,\n month: _propTypes2.default.instanceOf(Date),\n children: _propTypes2.default.node,\n classNames: _propTypes2.default.object\n} : {};\n\n/**\n * The default function used to format a Date to String, passed to the `format`\n * prop.\n * @param {Date} d\n * @return {String}\n */\nfunction defaultFormat(d) {\n if ((0, _DateUtils.isDate)(d)) {\n var year = d.getFullYear();\n var month = '' + (d.getMonth() + 1);\n var day = '' + d.getDate();\n return year + '-' + month + '-' + day;\n }\n return '';\n}\n\n/**\n * The default function used to parse a String as Date, passed to the `parse`\n * prop.\n * @param {String} str\n * @return {Date}\n */\nfunction defaultParse(str) {\n if (typeof str !== 'string') {\n return undefined;\n }\n var split = str.split('-');\n if (split.length !== 3) {\n return undefined;\n }\n var year = parseInt(split[0], 10);\n var month = parseInt(split[1], 10) - 1;\n var day = parseInt(split[2], 10);\n if (isNaN(year) || String(year).length > 4 || isNaN(month) || isNaN(day) || day <= 0 || day > 31 || month < 0 || month >= 12) {\n return undefined;\n }\n\n return new Date(year, month, day);\n}\n\nvar DayPickerInput = function (_React$Component) {\n _inherits(DayPickerInput, _React$Component);\n\n function DayPickerInput(props) {\n _classCallCheck(this, DayPickerInput);\n\n var _this = _possibleConstructorReturn(this, (DayPickerInput.__proto__ || Object.getPrototypeOf(DayPickerInput)).call(this, props));\n\n _this.input = null;\n _this.daypicker = null;\n _this.clickTimeout = null;\n _this.hideTimeout = null;\n _this.inputBlurTimeout = null;\n _this.inputFocusTimeout = null;\n\n\n _this.state = _this.getInitialStateFromProps(props);\n _this.state.showOverlay = props.showOverlay;\n\n _this.hideAfterDayClick = _this.hideAfterDayClick.bind(_this);\n _this.handleInputClick = _this.handleInputClick.bind(_this);\n _this.handleInputFocus = _this.handleInputFocus.bind(_this);\n _this.handleInputBlur = _this.handleInputBlur.bind(_this);\n _this.handleInputChange = _this.handleInputChange.bind(_this);\n _this.handleInputKeyDown = _this.handleInputKeyDown.bind(_this);\n _this.handleInputKeyUp = _this.handleInputKeyUp.bind(_this);\n _this.handleDayClick = _this.handleDayClick.bind(_this);\n _this.handleMonthChange = _this.handleMonthChange.bind(_this);\n _this.handleOverlayFocus = _this.handleOverlayFocus.bind(_this);\n _this.handleOverlayBlur = _this.handleOverlayBlur.bind(_this);\n return _this;\n }\n\n _createClass(DayPickerInput, [{\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n var newState = {};\n\n // Current props\n var _props = this.props,\n value = _props.value,\n formatDate = _props.formatDate,\n format = _props.format,\n dayPickerProps = _props.dayPickerProps;\n\n // Update the input value if the `value` prop has changed\n\n if (value !== prevProps.value) {\n if ((0, _DateUtils.isDate)(value)) {\n newState.value = formatDate(value, format, dayPickerProps.locale);\n } else {\n newState.value = value;\n }\n }\n\n // Update the month if the months from props changed\n var prevMonth = prevProps.dayPickerProps.month;\n if (dayPickerProps.month && dayPickerProps.month !== prevMonth && !(0, _DateUtils.isSameMonth)(dayPickerProps.month, prevMonth)) {\n newState.month = dayPickerProps.month;\n }\n\n // Updated the selected days from props if they changed\n if (prevProps.dayPickerProps.selectedDays !== dayPickerProps.selectedDays) {\n newState.selectedDays = dayPickerProps.selectedDays;\n }\n\n if (Object.keys(newState).length > 0) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState(newState);\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n clearTimeout(this.clickTimeout);\n clearTimeout(this.hideTimeout);\n clearTimeout(this.inputFocusTimeout);\n clearTimeout(this.inputBlurTimeout);\n clearTimeout(this.overlayBlurTimeout);\n }\n }, {\n key: 'getInitialMonthFromProps',\n value: function getInitialMonthFromProps(props) {\n var dayPickerProps = props.dayPickerProps,\n format = props.format;\n\n var day = void 0;\n if (props.value) {\n if ((0, _DateUtils.isDate)(props.value)) {\n day = props.value;\n } else {\n day = props.parseDate(props.value, format, dayPickerProps.locale);\n }\n }\n return dayPickerProps.initialMonth || dayPickerProps.month || day || new Date();\n }\n }, {\n key: 'getInitialStateFromProps',\n value: function getInitialStateFromProps(props) {\n var dayPickerProps = props.dayPickerProps,\n formatDate = props.formatDate,\n format = props.format;\n var value = props.value;\n\n if (props.value && (0, _DateUtils.isDate)(props.value)) {\n value = formatDate(props.value, format, dayPickerProps.locale);\n }\n return {\n value: value,\n month: this.getInitialMonthFromProps(props),\n selectedDays: dayPickerProps.selectedDays\n };\n }\n }, {\n key: 'getInput',\n value: function getInput() {\n return this.input;\n }\n }, {\n key: 'getDayPicker',\n value: function getDayPicker() {\n return this.daypicker;\n }\n }, {\n key: 'updateState',\n\n\n /**\n * Update the component's state and fire the `onDayChange` event passing the\n * day's modifiers to it.\n *\n * @param {Date} day - Will be used for changing the month\n * @param {String} value - Input field value\n * @private\n */\n value: function updateState(day, value, callback) {\n var _props2 = this.props,\n dayPickerProps = _props2.dayPickerProps,\n onDayChange = _props2.onDayChange;\n\n this.setState({ month: day, value: value }, function () {\n if (callback) {\n callback();\n }\n if (!onDayChange) {\n return;\n }\n var modifiersObj = _extends({\n disabled: dayPickerProps.disabledDays,\n selected: dayPickerProps.selectedDays\n }, dayPickerProps.modifiers);\n var modifiers = (0, _ModifiersUtils.getModifiersForDay)(day, modifiersObj).reduce(function (obj, modifier) {\n var newObj = _extends({}, obj);\n newObj[modifier] = true;\n return newObj;\n }, {});\n onDayChange(day, modifiers);\n });\n }\n\n /**\n * Show the Day Picker overlay.\n *\n * @memberof DayPickerInput\n */\n\n }, {\n key: 'showDayPicker',\n value: function showDayPicker() {\n var _props3 = this.props,\n parseDate = _props3.parseDate,\n format = _props3.format,\n dayPickerProps = _props3.dayPickerProps;\n var _state = this.state,\n value = _state.value,\n showOverlay = _state.showOverlay;\n\n if (showOverlay) {\n return;\n }\n // Reset the current displayed month when showing the overlay\n var month = value ? parseDate(value, format, dayPickerProps.locale) // Use the month in the input field\n : this.getInitialMonthFromProps(this.props); // Restore the month from the props\n this.setState({\n showOverlay: true,\n month: month || this.state.month\n });\n }\n\n /**\n * Hide the Day Picker overlay\n *\n * @memberof DayPickerInput\n */\n\n }, {\n key: 'hideDayPicker',\n value: function hideDayPicker() {\n if (this.state.showOverlay === false) {\n return;\n }\n this.setState({ showOverlay: false });\n }\n }, {\n key: 'hideAfterDayClick',\n value: function hideAfterDayClick() {\n var _this2 = this;\n\n if (!this.props.hideOnDayClick) {\n return;\n }\n this.hideTimeout = setTimeout(function () {\n return _this2.hideDayPicker();\n }, HIDE_TIMEOUT);\n }\n }, {\n key: 'handleInputClick',\n value: function handleInputClick(e) {\n this.showDayPicker();\n if (this.props.inputProps.onClick) {\n e.persist();\n this.props.inputProps.onClick(e);\n }\n }\n }, {\n key: 'handleInputFocus',\n value: function handleInputFocus(e) {\n var _this3 = this;\n\n this.showDayPicker();\n // Set `overlayHasFocus` after a timeout so the overlay can be hidden when\n // the input is blurred\n this.inputFocusTimeout = setTimeout(function () {\n _this3.overlayHasFocus = false;\n }, 2);\n if (this.props.inputProps.onFocus) {\n e.persist();\n this.props.inputProps.onFocus(e);\n }\n }\n\n // When the input is blurred, the overlay should disappear. However the input\n // is blurred also when the user interacts with the overlay (e.g. the overlay\n // get the focus by clicking it). In these cases, the overlay should not be\n // hidden. There are different approaches to avoid hiding the overlay when\n // this happens, but the only cross-browser hack we’ve found is to set all\n // these timeouts in code before changing `overlayHasFocus`.\n\n }, {\n key: 'handleInputBlur',\n value: function handleInputBlur(e) {\n var _this4 = this;\n\n this.inputBlurTimeout = setTimeout(function () {\n if (!_this4.overlayHasFocus) {\n _this4.hideDayPicker();\n }\n }, 1);\n if (this.props.inputProps.onBlur) {\n e.persist();\n this.props.inputProps.onBlur(e);\n }\n }\n }, {\n key: 'handleOverlayFocus',\n value: function handleOverlayFocus(e) {\n e.preventDefault();\n this.overlayHasFocus = true;\n if (!this.props.keepFocus || !this.input || typeof this.input.focus !== 'function') {\n return;\n }\n this.input.focus();\n }\n }, {\n key: 'handleOverlayBlur',\n value: function handleOverlayBlur() {\n var _this5 = this;\n\n // We need to set a timeout otherwise IE11 will hide the overlay when\n // focusing it\n this.overlayBlurTimeout = setTimeout(function () {\n _this5.overlayHasFocus = false;\n }, 3);\n }\n }, {\n key: 'handleInputChange',\n value: function handleInputChange(e) {\n var _props4 = this.props,\n dayPickerProps = _props4.dayPickerProps,\n format = _props4.format,\n inputProps = _props4.inputProps,\n onDayChange = _props4.onDayChange,\n parseDate = _props4.parseDate;\n\n if (inputProps.onChange) {\n e.persist();\n inputProps.onChange(e);\n }\n var value = e.target.value;\n\n if (value.trim() === '') {\n this.setState({ value: value });\n if (onDayChange) onDayChange(undefined, {});\n return;\n }\n var day = parseDate(value, format, dayPickerProps.locale);\n if (!day) {\n this.setState({ value: value });\n if (onDayChange) onDayChange(undefined, {});\n return;\n }\n this.updateState(day, value);\n }\n }, {\n key: 'handleInputKeyDown',\n value: function handleInputKeyDown(e) {\n if (e.keyCode === _keys.TAB) {\n this.hideDayPicker();\n } else {\n this.showDayPicker();\n }\n if (this.props.inputProps.onKeyDown) {\n e.persist();\n this.props.inputProps.onKeyDown(e);\n }\n }\n }, {\n key: 'handleInputKeyUp',\n value: function handleInputKeyUp(e) {\n if (e.keyCode === _keys.ESC) {\n this.hideDayPicker();\n } else {\n this.showDayPicker();\n }\n if (this.props.inputProps.onKeyUp) {\n e.persist();\n this.props.inputProps.onKeyUp(e);\n }\n }\n }, {\n key: 'handleMonthChange',\n value: function handleMonthChange(month) {\n var _this6 = this;\n\n this.setState({ month: month }, function () {\n if (_this6.props.dayPickerProps && _this6.props.dayPickerProps.onMonthChange) {\n _this6.props.dayPickerProps.onMonthChange(month);\n }\n });\n }\n }, {\n key: 'handleDayClick',\n value: function handleDayClick(day, modifiers, e) {\n var _this7 = this;\n\n var _props5 = this.props,\n clickUnselectsDay = _props5.clickUnselectsDay,\n dayPickerProps = _props5.dayPickerProps,\n onDayChange = _props5.onDayChange,\n formatDate = _props5.formatDate,\n format = _props5.format;\n\n if (dayPickerProps.onDayClick) {\n dayPickerProps.onDayClick(day, modifiers, e);\n }\n\n // Do nothing if the day is disabled\n if (modifiers.disabled || dayPickerProps && dayPickerProps.classNames && modifiers[dayPickerProps.classNames.disabled]) {\n return;\n }\n\n // If the clicked day is already selected, remove the clicked day\n // from the selected days and empty the field value\n if (modifiers.selected && clickUnselectsDay) {\n var selectedDays = this.state.selectedDays;\n\n if (Array.isArray(selectedDays)) {\n selectedDays = selectedDays.slice(0);\n var selectedDayIdx = selectedDays.indexOf(day);\n selectedDays.splice(selectedDayIdx, 1);\n } else if (selectedDays) {\n selectedDays = null;\n }\n this.setState({ value: '', selectedDays: selectedDays }, this.hideAfterDayClick);\n if (onDayChange) {\n onDayChange(undefined, modifiers);\n }\n return;\n }\n\n var value = formatDate(day, format, dayPickerProps.locale);\n this.setState({ value: value, month: day }, function () {\n if (onDayChange) {\n onDayChange(day, modifiers);\n }\n _this7.hideAfterDayClick();\n });\n }\n }, {\n key: 'renderOverlay',\n value: function renderOverlay() {\n var _this8 = this;\n\n var _props6 = this.props,\n classNames = _props6.classNames,\n dayPickerProps = _props6.dayPickerProps,\n parseDate = _props6.parseDate,\n formatDate = _props6.formatDate,\n format = _props6.format;\n var _state2 = this.state,\n selectedDays = _state2.selectedDays,\n value = _state2.value;\n\n var selectedDay = void 0;\n if (!selectedDays && value) {\n var day = parseDate(value, format, dayPickerProps.locale);\n if (day) {\n selectedDay = day;\n }\n } else if (selectedDays) {\n selectedDay = selectedDays;\n }\n var onTodayButtonClick = void 0;\n if (dayPickerProps.todayButton) {\n // Set the current day when clicking the today button\n onTodayButtonClick = function onTodayButtonClick() {\n return _this8.updateState(new Date(), formatDate(new Date(), format, dayPickerProps.locale), _this8.hideAfterDayClick);\n };\n }\n var Overlay = this.props.overlayComponent;\n return _react2.default.createElement(\n Overlay,\n {\n classNames: classNames,\n month: this.state.month,\n selectedDay: selectedDay,\n input: this.input,\n tabIndex: 0 // tabIndex is necessary to catch focus/blur events on Safari\n , onFocus: this.handleOverlayFocus,\n onBlur: this.handleOverlayBlur\n },\n _react2.default.createElement(_DayPicker2.default, _extends({\n ref: function ref(el) {\n return _this8.daypicker = el;\n },\n onTodayButtonClick: onTodayButtonClick\n }, dayPickerProps, {\n month: this.state.month,\n selectedDays: selectedDay,\n onDayClick: this.handleDayClick,\n onMonthChange: this.handleMonthChange\n }))\n );\n }\n }, {\n key: 'render',\n value: function render() {\n var _this9 = this;\n\n var Input = this.props.component;\n var inputProps = this.props.inputProps;\n\n return _react2.default.createElement(\n 'div',\n { className: this.props.classNames.container },\n _react2.default.createElement(Input, _extends({\n ref: function ref(el) {\n return _this9.input = el;\n },\n placeholder: this.props.placeholder\n }, inputProps, {\n value: this.state.value,\n onChange: this.handleInputChange,\n onFocus: this.handleInputFocus,\n onBlur: this.handleInputBlur,\n onKeyDown: this.handleInputKeyDown,\n onKeyUp: this.handleInputKeyUp,\n onClick: !inputProps.disabled ? this.handleInputClick : undefined\n })),\n this.state.showOverlay && this.renderOverlay()\n );\n }\n }]);\n\n return DayPickerInput;\n}(_react2.default.Component);\n\nDayPickerInput.defaultProps = {\n dayPickerProps: {},\n value: '',\n placeholder: 'YYYY-M-D',\n format: 'L',\n formatDate: defaultFormat,\n parseDate: defaultParse,\n showOverlay: false,\n hideOnDayClick: true,\n clickUnselectsDay: false,\n keepFocus: true,\n component: 'input',\n inputProps: {},\n overlayComponent: OverlayComponent,\n classNames: {\n container: 'DayPickerInput',\n overlayWrapper: 'DayPickerInput-OverlayWrapper',\n overlay: 'DayPickerInput-Overlay'\n }\n};\nexports.default = DayPickerInput;\nDayPickerInput.propTypes = process.env.NODE_ENV !== \"production\" ? {\n value: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.instanceOf(Date)]),\n inputProps: _propTypes2.default.object,\n placeholder: _propTypes2.default.string,\n\n format: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.arrayOf(_propTypes2.default.string)]),\n\n formatDate: _propTypes2.default.func,\n parseDate: _propTypes2.default.func,\n\n showOverlay: _propTypes2.default.bool,\n dayPickerProps: _propTypes2.default.object,\n hideOnDayClick: _propTypes2.default.bool,\n clickUnselectsDay: _propTypes2.default.bool,\n keepFocus: _propTypes2.default.bool,\n component: _propTypes2.default.any,\n overlayComponent: _propTypes2.default.any,\n\n classNames: _propTypes2.default.shape({\n container: _propTypes2.default.string,\n overlayWrapper: _propTypes2.default.string,\n overlay: _propTypes2.default.string.isRequired\n }),\n\n onDayChange: _propTypes2.default.func,\n onChange: _propTypes2.default.func,\n onClick: _propTypes2.default.func,\n onFocus: _propTypes2.default.func,\n onBlur: _propTypes2.default.func,\n onKeyUp: _propTypes2.default.func\n} : {};\n//# sourceMappingURL=DayPickerInput.js.map\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-day-picker/lib/src/DayPickerInput.js\n// module id = 300\n// module chunks = 0","import React, { Component } from 'react';\r\nimport { TextInput, PrimaryButton, SelectInput } from '../../components/BasicForm';\r\nimport { DateField } from '../../components/DateField';\r\nimport { DualRangeInput } from'../../components/DualRangeInput';\r\nimport { OffenderResultCard } from '../../components/OffenderResultCard';\r\nimport { LoadingIndicator } from '../../components/LoadingIndicator';\r\nimport { ErrorDisplay } from '../../components/ErrorDisplay';\r\nimport { DateUtils } from 'react-day-picker';\r\nimport { RangeSlider } from '../../components/RangeSlider';\r\nimport SelectFieldOptions from '../../utils/selectFieldOptions';\r\nimport axios from 'axios';\r\nimport moment from 'moment';\r\nimport 'rc-slider/assets/index.css';\r\n\r\nclass OffenderToVisit extends Component {\r\n\tstate = {\r\n\t\theading: 'Select Who to Visit',\r\n\t\tshowProgressBar: true,\r\n\t\tbadge: 25,\r\n\t\tpageId: 'visitor-who-to-visit',\r\n\t\tshowConditionalFields: false,\r\n\t\toffenderSearchResults: [],\r\n\t\toffenderApiUrl: null,\r\n\t\tDOCResponsible: [],\r\n\t\tloading: false,\r\n\t\tsearchError: null,\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tconst self = this;\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tif(!stepData.access) {\r\n\t\t\tthis.props.previousStep(stepData);\r\n\t\t}\r\n\t\tthis.props.setHeaderDisplay(\r\n\t\t\tthis.state.heading,\r\n \t\tstepData.displayStep,\r\n\t\t\tthis.state.showProgressBar,\r\n\t\t\tthis.state.pageId,\r\n \t\tstepData.step,\r\n \t\tthis.state.badge\r\n\t\t);\r\n\t\taxios.post(\"VisitorApplication.aspx/GetOffenderApiUrl\", {key: \"key\"})\r\n\t\t\t.then(res => {\r\n\t\t\t\tself.setState({offenderApiUrl: res.data.d})\r\n\t\t\t});\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tdocument.getElementById('root').scrollIntoView(true);\r\n\t\twindow.scrollBy(0, -10);\t\r\n\t}\r\n\thandleConditionalClick = () => {\r\n\t\tconst toggle = !this.state.showConditionalFields;\r\n\t\tthis.setState({showConditionalFields: toggle})\r\n\t}\r\n\thandleOffenderSearch = () => {\r\n\t\tif(!this.validateSearchForm()) {\r\n\t\t\tthis.setState({loading: true});\r\n\t\t\tconst url = this.state.offenderApiUrl;\r\n\t\t\tconst fields = this.props.fields;\r\n\t\t\tlet formattedDate;\r\n\t\t\tif(!(DateUtils.isDate(fields.offenderSearchReleaseDate.value))) {\r\n\t\t\t\tformattedDate = null;\r\n\t\t\t} else {\r\n\t\t\t\tformattedDate = moment(fields.offenderSearchReleaseDate.value).format('L');\r\n\t\t\t}\r\n\t\t\tconst offenderSearch = {\r\n\t\t\t\tOffenderId: parseInt(fields.offenderSearchId.value, 10) || null,\r\n\t\t\t\tFirstNameLowercase: fields.offenderSearchFirstName.value.toLowerCase(),\r\n\t\t\t\tLastNameLowercase: fields.offenderSearchLastName.value.toLowerCase(),\r\n\t\t\t\tMiddleNameLowercase: fields.offenderSearchMiddleName.value.toLowerCase() || null,\r\n\t\t\t\tReleaseDate: formattedDate,\r\n\t\t\t\tAgeFrom: fields.offenderSearchAgeFrom.value || null,\r\n\t\t\t\tAgeTo: fields.offenderSearchAgeTo.value || 99,\r\n\t\t\t\tRace: this.props.getOptionName(fields.offenderSearchRace, fields.offenderSearchRace.value) || null,\r\n\t\t\t\tAlias: fields.offenderSearchAlias.value.toLowerCase() || null,\r\n\t\t\t\tGender: this.props.getOptionName(fields.offenderSearchSex, fields.offenderSearchSex.value) || null,\r\n\t\t\t}\r\n\t\t\t// output search\r\n\t\t\t//console.log(offenderSearch);\r\n\t\t\taxios.post(url, offenderSearch)\r\n\t\t\t.then(res => {\r\n\t\t\t\t// output results\r\n\t\t\t\t//console.log(res.data);\r\n\t\t\t\tconst DOCResponsible = res.data.filter(x => x.DOCResponsible === \"1\" && x.LocationType === \"Adult Facility/Institution\");\r\n\t\t\t\tif(DOCResponsible.length > 0) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\toffenderSearchResults: res.data,\r\n\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\tDOCResponsible: DOCResponsible,\r\n\t\t\t\t\t\tsearchError: null,\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\toffenderSearchResults: res.data,\r\n\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\tDOCResponsible: DOCResponsible,\r\n\t\t\t\t\t\tsearchError: \"No inmate match was found using the information which was provided\",\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t\tconst fieldNames = Object.keys(fields);\r\n\t\t\t\tfieldNames.map(name => {\r\n\t\t\t\t\tif(name === 'offenderSearchAgeFrom') {\r\n\t\t\t\t\t\tthis.props.clearInput(name, 18);\t\r\n\t\t\t\t\t} else if(name === 'offenderSearchAgeTo') {\r\n\t\t\t\t\t\tthis.props.clearInput(name, 99);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.props.clearInput(name);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn name;\r\n\t\t\t\t})\r\n\t\t\t\tdocument.getElementById('visitation-search-results').scrollIntoView();\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tconst message = err.response \r\n\t\t\t\t\t? err.response.data.Message\r\n\t\t\t\t\t: \"The inmate locator is temporarily unavailable. Please try again later.\"\r\n\t\t\t\tconst fieldNames = Object.keys(fields);\r\n\t\t\t\tfieldNames.map(name => {\r\n\t\t\t\t\tif(name === 'offenderSearchAgeFrom') {\r\n\t\t\t\t\t\tthis.props.clearInput(name, 18);\t\r\n\t\t\t\t\t} else if(name === 'offenderSearchAgeTo') {\r\n\t\t\t\t\t\tthis.props.clearInput(name, 99);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.props.clearInput(name);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn name;\r\n\t\t\t\t})\r\n\t\t\t\tdocument.getElementById('visitation-search-results').scrollIntoView()\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\toffenderSearchResults: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tDOCResponsible: [],\r\n\t\t\t\t\tsearchError: message,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.scrollToError();\r\n\t\t}\r\n\t}\r\n\tvalidateSearchForm = () => {\r\n\t\tconst fields = this.props.fields;\r\n\t\tconst offenderId = fields.offenderSearchId.value;\r\n\t\tconst firstName = fields.offenderSearchFirstName.value;\r\n\t\tconst lastName = fields.offenderSearchLastName.value;\r\n\t\tconst fieldsToBeValidated = [];\r\n\t\tlet isErr = false;\r\n\t\tthis.props.clearErrors(Object.keys(fields));\r\n\r\n\t\tif(!offenderId) {\r\n\t\t\tfieldsToBeValidated.push(\"offenderSearchFirstName\");\r\n\t\t\tfieldsToBeValidated.push(\"offenderSearchLastName\");\r\n\t\t}\r\n\t\tif(!firstName && !lastName) {\r\n\t\t\tfieldsToBeValidated.push(\"offenderSearchId\");\r\n\t\t}\r\n\t\tif(this.props.validateStep(fieldsToBeValidated) || (!firstName && !lastName && !offenderId)) {\r\n\t\t\tisErr = true;\r\n\t\t}\r\n\t\treturn isErr;\r\n\t}\r\n\tscrollToError = () => {\r\n\t\tconst fields = this.props.fields;\r\n\t\tlet errFields = [];\r\n\t\tObject.keys(fields).map((fieldName) => {\r\n\t\t\tif(fields[fieldName].className === \"input-err\") {\r\n\t\t\t\terrFields.push(fieldName);\r\n\t\t\t}\r\n\t\t\treturn fieldName;\r\n\t\t})\r\n\t\tconst firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n\t\tif (firstErr) {\r\n\t\t\tfirstErr.scrollIntoView();\r\n\t\t}\r\n\t}\r\n\taddOffender = (id) => {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tlet offenderToAdd;\r\n\t\tthis.state.DOCResponsible.map(offender => {\r\n\t\t\tif(offender.OffenderId === id) {\r\n\t\t\t\toffenderToAdd = offender;\r\n\t\t\t}\r\n\t\t\treturn offender;\r\n\t\t})\r\n\t\tthis.props.saveOffender(offenderToAdd);\r\n\t\tthis.props.nextStep(stepData)\r\n\t}\r\n\trender() {\r\n\t\tconst fields = this.props.fields;\r\n\t\tconst DOCResponsible = this.state.DOCResponsible;\r\n\t\tconst error = this.state.searchError;\r\n\t\tconst loading = this.state.loading;\r\n\t\treturn(\r\n\t\t\t\r\n\t\t\t\t{loading ? (\r\n\t\t\t\t\t
\r\n\t\t\t\t) : (false)}\r\n\t\t\t\t
Use the search tool to locate the inmate you want to visit, and add them to your application.
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{DOCResponsible.length > 0 ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tSearch Results \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{this.state.DOCResponsible.map(result => (\r\n\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t) : (false)}\r\n\t\t\t\t\t{error ? (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t) : (false)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default OffenderToVisit;\n\n\n// WEBPACK FOOTER //\n// ./src/pages/OffenderToVisit/OffenderToVisit.js","import React from 'react';\r\n\r\nexport const DualRangeInput = (props) => (\r\n\t\r\n\t\t{props.label} \r\n\t\t \r\n\t\t \r\n\t\t \r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/DualRangeInput/DualRangeInput.js","import React from 'react';\r\nimport { PrimaryButton } from '../BasicForm';\r\n\r\nexport const OffenderResultCard = (props) => (\r\n\t\r\n\t\t\r\n\t\t\tname \r\n\t\t\t{props.fullName} // \r\n\t\t\tage \r\n\t\t\t{props.age}, \r\n\t\t\trace \r\n\t\t\t{props.race}, \r\n\t\t\tsex \r\n\t\t\t{props.gender} \r\n\t\t \r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
Alias: \r\n\t\t\t\t{props.alias || \"N/A\"} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Inmate ID #: \r\n\t\t\t\t{props.offenderId} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Location: \r\n\t\t\t\t{props.locationName} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Release Date: \r\n\t\t\t\t{props.projectedReleaseDate} \r\n\t\t\t\r\n\t\t \r\n\t\t\r\n\t \r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/OffenderResultCard/OffenderResultCard.js","import React from 'react';\r\n\r\nexport const LoadingIndicator = (props) => (\r\n\t\r\n\t\t
\r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/LoadingIndicator/LoadingIndicator.js","import React from \"react\";\r\n\r\nexport const ErrorDisplay = props => (\r\n \r\n
\r\n \r\n {props.message} \r\n
\r\n
\r\n No results were found with the search criteria used. If you believe this\r\n is an error, please contact our staff for assistance by submitting a\r\n message using our{\" \"}\r\n Contact Form .\r\n
\r\n
\r\n Only applications to visit inmates housed in a Virginia Department of\r\n Corrections facility will be accepted. If you would like to visit an\r\n inmate in a local or regional jail, please contact that jail about their\r\n application process.\r\n
\r\n
\r\n);\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/ErrorDisplay/ErrorDisplay.js","import React from 'react';\r\nimport Range from 'rc-slider/lib/Range';\r\n\r\nexport const RangeSlider = (props) => (\r\n\t\r\n\t\t{props.title}
\r\n\t\t {props.handleSliderChange(range, props.minName, props.maxName)}} />\r\n\t\t\r\n\t\t\t{props.minValue} \r\n\t\t\t– \r\n\t\t\t{props.maxValue} \r\n\t\t
\r\n\t \r\n)\n\n\n// WEBPACK FOOTER //\n// ./src/components/RangeSlider/RangeSlider.js","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _defineProperty2 = require('babel-runtime/helpers/defineProperty');\n\nvar _defineProperty3 = _interopRequireDefault(_defineProperty2);\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');\n\nvar _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);\n\nvar _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = require('babel-runtime/helpers/createClass');\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');\n\nvar _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);\n\nvar _inherits2 = require('babel-runtime/helpers/inherits');\n\nvar _inherits3 = _interopRequireDefault(_inherits2);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _shallowequal = require('shallowequal');\n\nvar _shallowequal2 = _interopRequireDefault(_shallowequal);\n\nvar _Track = require('./common/Track');\n\nvar _Track2 = _interopRequireDefault(_Track);\n\nvar _createSlider = require('./common/createSlider');\n\nvar _createSlider2 = _interopRequireDefault(_createSlider);\n\nvar _utils = require('./utils');\n\nvar utils = _interopRequireWildcard(_utils);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar Range = function (_React$Component) {\n (0, _inherits3['default'])(Range, _React$Component);\n\n function Range(props) {\n (0, _classCallCheck3['default'])(this, Range);\n\n var _this = (0, _possibleConstructorReturn3['default'])(this, (Range.__proto__ || Object.getPrototypeOf(Range)).call(this, props));\n\n _this.onEnd = function () {\n _this.removeDocumentEvents();\n _this.props.onAfterChange(_this.getValue());\n };\n\n var count = props.count,\n min = props.min,\n max = props.max;\n\n var initialValue = Array.apply(undefined, (0, _toConsumableArray3['default'])(Array(count + 1))).map(function () {\n return min;\n });\n var defaultValue = 'defaultValue' in props ? props.defaultValue : initialValue;\n var value = props.value !== undefined ? props.value : defaultValue;\n var bounds = value.map(function (v, i) {\n return _this.trimAlignValue(v, i);\n });\n var recent = bounds[0] === max ? 0 : bounds.length - 1;\n\n _this.state = {\n handle: null,\n recent: recent,\n bounds: bounds\n };\n return _this;\n }\n\n (0, _createClass3['default'])(Range, [{\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n var _this2 = this;\n\n if (!('value' in nextProps || 'min' in nextProps || 'max' in nextProps)) return;\n if (this.props.min === nextProps.min && this.props.max === nextProps.max && (0, _shallowequal2['default'])(this.props.value, nextProps.value)) {\n return;\n }\n\n var bounds = this.state.bounds;\n\n var value = nextProps.value || bounds;\n var nextBounds = value.map(function (v, i) {\n return _this2.trimAlignValue(v, i, nextProps);\n });\n if (nextBounds.length === bounds.length && nextBounds.every(function (v, i) {\n return v === bounds[i];\n })) return;\n\n this.setState({ bounds: nextBounds });\n\n if (bounds.some(function (v) {\n return utils.isValueOutOfRange(v, nextProps);\n })) {\n var newValues = value.map(function (v) {\n return utils.ensureValueInRange(v, nextProps);\n });\n this.props.onChange(newValues);\n }\n }\n }, {\n key: 'onChange',\n value: function onChange(state) {\n var props = this.props;\n var isNotControlled = !('value' in props);\n if (isNotControlled) {\n this.setState(state);\n } else if (state.handle !== undefined) {\n this.setState({ handle: state.handle });\n }\n\n var data = (0, _extends3['default'])({}, this.state, state);\n var changedValue = data.bounds;\n props.onChange(changedValue);\n }\n }, {\n key: 'onStart',\n value: function onStart(position) {\n var props = this.props;\n var state = this.state;\n var bounds = this.getValue();\n props.onBeforeChange(bounds);\n\n var value = this.calcValueByPos(position);\n this.startValue = value;\n this.startPosition = position;\n\n var closestBound = this.getClosestBound(value);\n this.prevMovedHandleIndex = this.getBoundNeedMoving(value, closestBound);\n\n this.setState({\n handle: this.prevMovedHandleIndex,\n recent: this.prevMovedHandleIndex\n });\n\n var prevValue = bounds[this.prevMovedHandleIndex];\n if (value === prevValue) return;\n\n var nextBounds = [].concat((0, _toConsumableArray3['default'])(state.bounds));\n nextBounds[this.prevMovedHandleIndex] = value;\n this.onChange({ bounds: nextBounds });\n }\n }, {\n key: 'onMove',\n value: function onMove(e, position) {\n utils.pauseEvent(e);\n var state = this.state;\n\n var value = this.calcValueByPos(position);\n var oldValue = state.bounds[state.handle];\n if (value === oldValue) return;\n\n this.moveTo(value);\n }\n }, {\n key: 'onKeyboard',\n value: function onKeyboard(e) {\n var valueMutator = utils.getKeyboardValueMutator(e);\n\n if (valueMutator) {\n utils.pauseEvent(e);\n var state = this.state,\n props = this.props;\n var bounds = state.bounds,\n handle = state.handle;\n\n var oldValue = bounds[handle];\n var mutatedValue = valueMutator(oldValue, props);\n var value = this.trimAlignValue(mutatedValue);\n if (value === oldValue) return;\n var isFromKeyboardEvent = true;\n this.moveTo(value, isFromKeyboardEvent);\n }\n }\n }, {\n key: 'getValue',\n value: function getValue() {\n return this.state.bounds;\n }\n }, {\n key: 'getClosestBound',\n value: function getClosestBound(value) {\n var bounds = this.state.bounds;\n\n var closestBound = 0;\n for (var i = 1; i < bounds.length - 1; ++i) {\n if (value > bounds[i]) {\n closestBound = i;\n }\n }\n if (Math.abs(bounds[closestBound + 1] - value) < Math.abs(bounds[closestBound] - value)) {\n closestBound += 1;\n }\n return closestBound;\n }\n }, {\n key: 'getBoundNeedMoving',\n value: function getBoundNeedMoving(value, closestBound) {\n var _state = this.state,\n bounds = _state.bounds,\n recent = _state.recent;\n\n var boundNeedMoving = closestBound;\n var isAtTheSamePoint = bounds[closestBound + 1] === bounds[closestBound];\n\n if (isAtTheSamePoint && bounds[recent] === bounds[closestBound]) {\n boundNeedMoving = recent;\n }\n\n if (isAtTheSamePoint && value !== bounds[closestBound + 1]) {\n boundNeedMoving = value < bounds[closestBound + 1] ? closestBound : closestBound + 1;\n }\n return boundNeedMoving;\n }\n }, {\n key: 'getLowerBound',\n value: function getLowerBound() {\n return this.state.bounds[0];\n }\n }, {\n key: 'getUpperBound',\n value: function getUpperBound() {\n var bounds = this.state.bounds;\n\n return bounds[bounds.length - 1];\n }\n\n /**\n * Returns an array of possible slider points, taking into account both\n * `marks` and `step`. The result is cached.\n */\n\n }, {\n key: 'getPoints',\n value: function getPoints() {\n var _props = this.props,\n marks = _props.marks,\n step = _props.step,\n min = _props.min,\n max = _props.max;\n\n var cache = this._getPointsCache;\n if (!cache || cache.marks !== marks || cache.step !== step) {\n var pointsObject = (0, _extends3['default'])({}, marks);\n if (step !== null) {\n for (var point = min; point <= max; point += step) {\n pointsObject[point] = point;\n }\n }\n var points = Object.keys(pointsObject).map(parseFloat);\n points.sort(function (a, b) {\n return a - b;\n });\n this._getPointsCache = { marks: marks, step: step, points: points };\n }\n return this._getPointsCache.points;\n }\n }, {\n key: 'moveTo',\n value: function moveTo(value, isFromKeyboardEvent) {\n var _this3 = this;\n\n var state = this.state,\n props = this.props;\n\n var nextBounds = [].concat((0, _toConsumableArray3['default'])(state.bounds));\n nextBounds[state.handle] = value;\n var nextHandle = state.handle;\n if (props.pushable !== false) {\n this.pushSurroundingHandles(nextBounds, nextHandle);\n } else if (props.allowCross) {\n nextBounds.sort(function (a, b) {\n return a - b;\n });\n nextHandle = nextBounds.indexOf(value);\n }\n this.onChange({\n handle: nextHandle,\n bounds: nextBounds\n });\n if (isFromKeyboardEvent) {\n // known problem: because setState is async,\n // so trigger focus will invoke handler's onEnd and another handler's onStart too early,\n // cause onBeforeChange and onAfterChange receive wrong value.\n // here use setState callback to hack,but not elegant\n this.setState({}, function () {\n _this3.handlesRefs[nextHandle].focus();\n });\n }\n }\n }, {\n key: 'pushSurroundingHandles',\n value: function pushSurroundingHandles(bounds, handle) {\n var value = bounds[handle];\n var threshold = this.props.pushable;\n\n threshold = Number(threshold);\n\n var direction = 0;\n if (bounds[handle + 1] - value < threshold) {\n direction = +1; // push to right\n }\n if (value - bounds[handle - 1] < threshold) {\n direction = -1; // push to left\n }\n\n if (direction === 0) {\n return;\n }\n\n var nextHandle = handle + direction;\n var diffToNext = direction * (bounds[nextHandle] - value);\n if (!this.pushHandle(bounds, nextHandle, direction, threshold - diffToNext)) {\n // revert to original value if pushing is impossible\n bounds[handle] = bounds[nextHandle] - direction * threshold;\n }\n }\n }, {\n key: 'pushHandle',\n value: function pushHandle(bounds, handle, direction, amount) {\n var originalValue = bounds[handle];\n var currentValue = bounds[handle];\n while (direction * (currentValue - originalValue) < amount) {\n if (!this.pushHandleOnePoint(bounds, handle, direction)) {\n // can't push handle enough to create the needed `amount` gap, so we\n // revert its position to the original value\n bounds[handle] = originalValue;\n return false;\n }\n currentValue = bounds[handle];\n }\n // the handle was pushed enough to create the needed `amount` gap\n return true;\n }\n }, {\n key: 'pushHandleOnePoint',\n value: function pushHandleOnePoint(bounds, handle, direction) {\n var points = this.getPoints();\n var pointIndex = points.indexOf(bounds[handle]);\n var nextPointIndex = pointIndex + direction;\n if (nextPointIndex >= points.length || nextPointIndex < 0) {\n // reached the minimum or maximum available point, can't push anymore\n return false;\n }\n var nextHandle = handle + direction;\n var nextValue = points[nextPointIndex];\n var threshold = this.props.pushable;\n\n var diffToNext = direction * (bounds[nextHandle] - nextValue);\n if (!this.pushHandle(bounds, nextHandle, direction, threshold - diffToNext)) {\n // couldn't push next handle, so we won't push this one either\n return false;\n }\n // push the handle\n bounds[handle] = nextValue;\n return true;\n }\n }, {\n key: 'trimAlignValue',\n value: function trimAlignValue(v, handle) {\n var nextProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n var mergedProps = (0, _extends3['default'])({}, this.props, nextProps);\n var valInRange = utils.ensureValueInRange(v, mergedProps);\n var valNotConflict = this.ensureValueNotConflict(handle, valInRange, mergedProps);\n return utils.ensureValuePrecision(valNotConflict, mergedProps);\n }\n }, {\n key: 'ensureValueNotConflict',\n value: function ensureValueNotConflict(handle, val, _ref) {\n var allowCross = _ref.allowCross,\n thershold = _ref.pushable;\n\n var state = this.state || {};\n var bounds = state.bounds;\n\n handle = handle === undefined ? state.handle : handle;\n thershold = Number(thershold);\n /* eslint-disable eqeqeq */\n if (!allowCross && handle != null && bounds !== undefined) {\n if (handle > 0 && val <= bounds[handle - 1] + thershold) {\n return bounds[handle - 1] + thershold;\n }\n if (handle < bounds.length - 1 && val >= bounds[handle + 1] - thershold) {\n return bounds[handle + 1] - thershold;\n }\n }\n /* eslint-enable eqeqeq */\n return val;\n }\n }, {\n key: 'render',\n value: function render() {\n var _this4 = this;\n\n var _state2 = this.state,\n handle = _state2.handle,\n bounds = _state2.bounds;\n var _props2 = this.props,\n prefixCls = _props2.prefixCls,\n vertical = _props2.vertical,\n included = _props2.included,\n disabled = _props2.disabled,\n min = _props2.min,\n max = _props2.max,\n handleGenerator = _props2.handle,\n trackStyle = _props2.trackStyle,\n handleStyle = _props2.handleStyle,\n tabIndex = _props2.tabIndex;\n\n\n var offsets = bounds.map(function (v) {\n return _this4.calcOffset(v);\n });\n\n var handleClassName = prefixCls + '-handle';\n var handles = bounds.map(function (v, i) {\n var _classNames;\n\n return handleGenerator({\n className: (0, _classnames2['default'])((_classNames = {}, (0, _defineProperty3['default'])(_classNames, handleClassName, true), (0, _defineProperty3['default'])(_classNames, handleClassName + '-' + (i + 1), true), _classNames)),\n prefixCls: prefixCls,\n vertical: vertical,\n offset: offsets[i],\n value: v,\n dragging: handle === i,\n index: i,\n tabIndex: tabIndex[i] || 0,\n min: min,\n max: max,\n disabled: disabled,\n style: handleStyle[i],\n ref: function ref(h) {\n return _this4.saveHandle(i, h);\n }\n });\n });\n\n var tracks = bounds.slice(0, -1).map(function (_, index) {\n var _classNames2;\n\n var i = index + 1;\n var trackClassName = (0, _classnames2['default'])((_classNames2 = {}, (0, _defineProperty3['default'])(_classNames2, prefixCls + '-track', true), (0, _defineProperty3['default'])(_classNames2, prefixCls + '-track-' + i, true), _classNames2));\n return _react2['default'].createElement(_Track2['default'], {\n className: trackClassName,\n vertical: vertical,\n included: included,\n offset: offsets[i - 1],\n length: offsets[i] - offsets[i - 1],\n style: trackStyle[index],\n key: i\n });\n });\n\n return { tracks: tracks, handles: handles };\n }\n }]);\n return Range;\n}(_react2['default'].Component); /* eslint-disable react/prop-types */\n\n\nRange.displayName = 'Range';\nRange.propTypes = {\n defaultValue: _propTypes2['default'].arrayOf(_propTypes2['default'].number),\n value: _propTypes2['default'].arrayOf(_propTypes2['default'].number),\n count: _propTypes2['default'].number,\n pushable: _propTypes2['default'].oneOfType([_propTypes2['default'].bool, _propTypes2['default'].number]),\n allowCross: _propTypes2['default'].bool,\n disabled: _propTypes2['default'].bool,\n tabIndex: _propTypes2['default'].arrayOf(_propTypes2['default'].number)\n};\nRange.defaultProps = {\n count: 1,\n allowCross: true,\n pushable: false,\n tabIndex: []\n};\nexports['default'] = (0, _createSlider2['default'])(Range);\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/Range.js\n// module id = 313\n// module chunks = 0","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc) {\n return $Object.defineProperty(it, key, desc);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/define-property.js\n// module id = 314\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.define-property.js\n// module id = 315\n// module chunks = 0","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_a-function.js\n// module id = 316\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/assign\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/assign.js\n// module id = 317\n// module chunks = 0","require('../../modules/es6.object.assign');\nmodule.exports = require('../../modules/_core').Object.assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/assign.js\n// module id = 318\n// module chunks = 0","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.assign.js\n// module id = 319\n// module chunks = 0","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_object-assign.js\n// module id = 320\n// module chunks = 0","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_array-includes.js\n// module id = 321\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_to-absolute-index.js\n// module id = 322\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/array/from\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/array/from.js\n// module id = 323\n// module chunks = 0","require('../../modules/es6.string.iterator');\nrequire('../../modules/es6.array.from');\nmodule.exports = require('../../modules/_core').Array.from;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/array/from.js\n// module id = 324\n// module chunks = 0","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_string-at.js\n// module id = 325\n// module chunks = 0","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_iter-create.js\n// module id = 326\n// module chunks = 0","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_object-dps.js\n// module id = 327\n// module chunks = 0","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_html.js\n// module id = 328\n// module chunks = 0","'use strict';\nvar ctx = require('./_ctx');\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar toLength = require('./_to-length');\nvar createProperty = require('./_create-property');\nvar getIterFn = require('./core.get-iterator-method');\n\n$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.array.from.js\n// module id = 329\n// module chunks = 0","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_iter-call.js\n// module id = 330\n// module chunks = 0","// check on default Array iterator\nvar Iterators = require('./_iterators');\nvar ITERATOR = require('./_wks')('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_is-array-iter.js\n// module id = 331\n// module chunks = 0","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_create-property.js\n// module id = 332\n// module chunks = 0","var classof = require('./_classof');\nvar ITERATOR = require('./_wks')('iterator');\nvar Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/core.get-iterator-method.js\n// module id = 333\n// module chunks = 0","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_classof.js\n// module id = 334\n// module chunks = 0","var ITERATOR = require('./_wks')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_iter-detect.js\n// module id = 335\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol/iterator\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/symbol/iterator.js\n// module id = 336\n// module chunks = 0","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/symbol/iterator.js\n// module id = 337\n// module chunks = 0","require('./es6.array.iterator');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar TO_STRING_TAG = require('./_wks')('toStringTag');\n\nvar DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +\n 'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +\n 'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +\n 'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +\n 'TextTrackList,TouchList').split(',');\n\nfor (var i = 0; i < DOMIterables.length; i++) {\n var NAME = DOMIterables[i];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/web.dom.iterable.js\n// module id = 338\n// module chunks = 0","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.array.iterator.js\n// module id = 339\n// module chunks = 0","module.exports = function () { /* empty */ };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_add-to-unscopables.js\n// module id = 340\n// module chunks = 0","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_iter-step.js\n// module id = 341\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/symbol\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/symbol.js\n// module id = 342\n// module chunks = 0","require('../../modules/es6.symbol');\nrequire('../../modules/es6.object.to-string');\nrequire('../../modules/es7.symbol.async-iterator');\nrequire('../../modules/es7.symbol.observable');\nmodule.exports = require('../../modules/_core').Symbol;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/symbol/index.js\n// module id = 343\n// module chunks = 0","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.symbol.js\n// module id = 344\n// module chunks = 0","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_meta.js\n// module id = 345\n// module chunks = 0","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_enum-keys.js\n// module id = 346\n// module chunks = 0","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_is-array.js\n// module id = 347\n// module chunks = 0","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_object-gopn-ext.js\n// module id = 348\n// module chunks = 0","require('./_wks-define')('asyncIterator');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es7.symbol.async-iterator.js\n// module id = 350\n// module chunks = 0","require('./_wks-define')('observable');\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es7.symbol.observable.js\n// module id = 351\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/set-prototype-of\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/set-prototype-of.js\n// module id = 352\n// module chunks = 0","require('../../modules/es6.object.set-prototype-of');\nmodule.exports = require('../../modules/_core').Object.setPrototypeOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/set-prototype-of.js\n// module id = 353\n// module chunks = 0","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.set-prototype-of.js\n// module id = 354\n// module chunks = 0","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/_set-proto.js\n// module id = 355\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/create\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/create.js\n// module id = 356\n// module chunks = 0","require('../../modules/es6.object.create');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function create(P, D) {\n return $Object.create(P, D);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/create.js\n// module id = 357\n// module chunks = 0","var $export = require('./_export');\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: require('./_object-create') });\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.create.js\n// module id = 358\n// module chunks = 0","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/shallowequal/index.js\n// module id = 359\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar Track = function Track(props) {\n var className = props.className,\n included = props.included,\n vertical = props.vertical,\n offset = props.offset,\n length = props.length,\n style = props.style;\n\n\n var positonStyle = vertical ? {\n bottom: offset + '%',\n height: length + '%'\n } : {\n left: offset + '%',\n width: length + '%'\n };\n\n var elStyle = (0, _extends3['default'])({}, style, positonStyle);\n return included ? _react2['default'].createElement('div', { className: className, style: elStyle }) : null;\n}; /* eslint-disable react/prop-types */\nexports['default'] = Track;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/common/Track.js\n// module id = 360\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');\n\nvar _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _defineProperty2 = require('babel-runtime/helpers/defineProperty');\n\nvar _defineProperty3 = _interopRequireDefault(_defineProperty2);\n\nvar _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = require('babel-runtime/helpers/createClass');\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');\n\nvar _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);\n\nvar _get2 = require('babel-runtime/helpers/get');\n\nvar _get3 = _interopRequireDefault(_get2);\n\nvar _inherits2 = require('babel-runtime/helpers/inherits');\n\nvar _inherits3 = _interopRequireDefault(_inherits2);\n\nexports['default'] = createSlider;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _addEventListener = require('rc-util/lib/Dom/addEventListener');\n\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _Steps = require('./Steps');\n\nvar _Steps2 = _interopRequireDefault(_Steps);\n\nvar _Marks = require('./Marks');\n\nvar _Marks2 = _interopRequireDefault(_Marks);\n\nvar _Handle = require('../Handle');\n\nvar _Handle2 = _interopRequireDefault(_Handle);\n\nvar _utils = require('../utils');\n\nvar utils = _interopRequireWildcard(_utils);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction noop() {}\n\nfunction createSlider(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_Component) {\n (0, _inherits3['default'])(ComponentEnhancer, _Component);\n\n function ComponentEnhancer(props) {\n (0, _classCallCheck3['default'])(this, ComponentEnhancer);\n\n var _this = (0, _possibleConstructorReturn3['default'])(this, (ComponentEnhancer.__proto__ || Object.getPrototypeOf(ComponentEnhancer)).call(this, props));\n\n _this.onMouseDown = function (e) {\n if (e.button !== 0) {\n return;\n }\n\n var isVertical = _this.props.vertical;\n var position = utils.getMousePosition(isVertical, e);\n if (!utils.isEventFromHandle(e, _this.handlesRefs)) {\n _this.dragOffset = 0;\n } else {\n var handlePosition = utils.getHandleCenterPosition(isVertical, e.target);\n _this.dragOffset = position - handlePosition;\n position = handlePosition;\n }\n _this.removeDocumentEvents();\n _this.onStart(position);\n _this.addDocumentMouseEvents();\n };\n\n _this.onTouchStart = function (e) {\n if (utils.isNotTouchEvent(e)) return;\n\n var isVertical = _this.props.vertical;\n var position = utils.getTouchPosition(isVertical, e);\n if (!utils.isEventFromHandle(e, _this.handlesRefs)) {\n _this.dragOffset = 0;\n } else {\n var handlePosition = utils.getHandleCenterPosition(isVertical, e.target);\n _this.dragOffset = position - handlePosition;\n position = handlePosition;\n }\n _this.onStart(position);\n _this.addDocumentTouchEvents();\n utils.pauseEvent(e);\n };\n\n _this.onFocus = function (e) {\n var _this$props = _this.props,\n onFocus = _this$props.onFocus,\n vertical = _this$props.vertical;\n\n if (utils.isEventFromHandle(e, _this.handlesRefs)) {\n var handlePosition = utils.getHandleCenterPosition(vertical, e.target);\n _this.dragOffset = 0;\n _this.onStart(handlePosition);\n utils.pauseEvent(e);\n if (onFocus) {\n onFocus(e);\n }\n }\n };\n\n _this.onBlur = function (e) {\n var onBlur = _this.props.onBlur;\n\n _this.onEnd(e);\n if (onBlur) {\n onBlur(e);\n }\n };\n\n _this.onMouseUp = function () {\n if (_this.handlesRefs[_this.prevMovedHandleIndex]) {\n _this.handlesRefs[_this.prevMovedHandleIndex].clickFocus();\n }\n };\n\n _this.onMouseMove = function (e) {\n if (!_this.sliderRef) {\n _this.onEnd();\n return;\n }\n var position = utils.getMousePosition(_this.props.vertical, e);\n _this.onMove(e, position - _this.dragOffset);\n };\n\n _this.onTouchMove = function (e) {\n if (utils.isNotTouchEvent(e) || !_this.sliderRef) {\n _this.onEnd();\n return;\n }\n\n var position = utils.getTouchPosition(_this.props.vertical, e);\n _this.onMove(e, position - _this.dragOffset);\n };\n\n _this.onKeyDown = function (e) {\n if (_this.sliderRef && utils.isEventFromHandle(e, _this.handlesRefs)) {\n _this.onKeyboard(e);\n }\n };\n\n _this.onClickMarkLabel = function (e, value) {\n e.stopPropagation();\n _this.onChange({ value: value });\n };\n\n _this.saveSlider = function (slider) {\n _this.sliderRef = slider;\n };\n\n if (process.env.NODE_ENV !== 'production') {\n var step = props.step,\n max = props.max,\n min = props.min;\n\n (0, _warning2['default'])(step && Math.floor(step) === step ? (max - min) % step === 0 : true, 'Slider[max] - Slider[min] (%s) should be a multiple of Slider[step] (%s)', max - min, step);\n }\n _this.handlesRefs = {};\n return _this;\n }\n\n (0, _createClass3['default'])(ComponentEnhancer, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n // Snapshot testing cannot handle refs, so be sure to null-check this.\n this.document = this.sliderRef && this.sliderRef.ownerDocument;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if ((0, _get3['default'])(ComponentEnhancer.prototype.__proto__ || Object.getPrototypeOf(ComponentEnhancer.prototype), 'componentWillUnmount', this)) (0, _get3['default'])(ComponentEnhancer.prototype.__proto__ || Object.getPrototypeOf(ComponentEnhancer.prototype), 'componentWillUnmount', this).call(this);\n this.removeDocumentEvents();\n }\n }, {\n key: 'getSliderStart',\n value: function getSliderStart() {\n var slider = this.sliderRef;\n var rect = slider.getBoundingClientRect();\n\n return this.props.vertical ? rect.top : rect.left;\n }\n }, {\n key: 'getSliderLength',\n value: function getSliderLength() {\n var slider = this.sliderRef;\n if (!slider) {\n return 0;\n }\n\n var coords = slider.getBoundingClientRect();\n return this.props.vertical ? coords.height : coords.width;\n }\n }, {\n key: 'addDocumentTouchEvents',\n value: function addDocumentTouchEvents() {\n // just work for Chrome iOS Safari and Android Browser\n this.onTouchMoveListener = (0, _addEventListener2['default'])(this.document, 'touchmove', this.onTouchMove);\n this.onTouchUpListener = (0, _addEventListener2['default'])(this.document, 'touchend', this.onEnd);\n }\n }, {\n key: 'addDocumentMouseEvents',\n value: function addDocumentMouseEvents() {\n this.onMouseMoveListener = (0, _addEventListener2['default'])(this.document, 'mousemove', this.onMouseMove);\n this.onMouseUpListener = (0, _addEventListener2['default'])(this.document, 'mouseup', this.onEnd);\n }\n }, {\n key: 'removeDocumentEvents',\n value: function removeDocumentEvents() {\n /* eslint-disable no-unused-expressions */\n this.onTouchMoveListener && this.onTouchMoveListener.remove();\n this.onTouchUpListener && this.onTouchUpListener.remove();\n\n this.onMouseMoveListener && this.onMouseMoveListener.remove();\n this.onMouseUpListener && this.onMouseUpListener.remove();\n /* eslint-enable no-unused-expressions */\n }\n }, {\n key: 'focus',\n value: function focus() {\n if (!this.props.disabled) {\n this.handlesRefs[0].focus();\n }\n }\n }, {\n key: 'blur',\n value: function blur() {\n if (!this.props.disabled) {\n this.handlesRefs[0].blur();\n }\n }\n }, {\n key: 'calcValue',\n value: function calcValue(offset) {\n var _props = this.props,\n vertical = _props.vertical,\n min = _props.min,\n max = _props.max;\n\n var ratio = Math.abs(Math.max(offset, 0) / this.getSliderLength());\n var value = vertical ? (1 - ratio) * (max - min) + min : ratio * (max - min) + min;\n return value;\n }\n }, {\n key: 'calcValueByPos',\n value: function calcValueByPos(position) {\n var pixelOffset = position - this.getSliderStart();\n var nextValue = this.trimAlignValue(this.calcValue(pixelOffset));\n return nextValue;\n }\n }, {\n key: 'calcOffset',\n value: function calcOffset(value) {\n var _props2 = this.props,\n min = _props2.min,\n max = _props2.max;\n\n var ratio = (value - min) / (max - min);\n return ratio * 100;\n }\n }, {\n key: 'saveHandle',\n value: function saveHandle(index, handle) {\n this.handlesRefs[index] = handle;\n }\n }, {\n key: 'render',\n value: function render() {\n var _classNames;\n\n var _props3 = this.props,\n prefixCls = _props3.prefixCls,\n className = _props3.className,\n marks = _props3.marks,\n dots = _props3.dots,\n step = _props3.step,\n included = _props3.included,\n disabled = _props3.disabled,\n vertical = _props3.vertical,\n min = _props3.min,\n max = _props3.max,\n children = _props3.children,\n maximumTrackStyle = _props3.maximumTrackStyle,\n style = _props3.style,\n railStyle = _props3.railStyle,\n dotStyle = _props3.dotStyle,\n activeDotStyle = _props3.activeDotStyle;\n\n var _get$call = (0, _get3['default'])(ComponentEnhancer.prototype.__proto__ || Object.getPrototypeOf(ComponentEnhancer.prototype), 'render', this).call(this),\n tracks = _get$call.tracks,\n handles = _get$call.handles;\n\n var sliderClassName = (0, _classnames2['default'])(prefixCls, (_classNames = {}, (0, _defineProperty3['default'])(_classNames, prefixCls + '-with-marks', Object.keys(marks).length), (0, _defineProperty3['default'])(_classNames, prefixCls + '-disabled', disabled), (0, _defineProperty3['default'])(_classNames, prefixCls + '-vertical', vertical), (0, _defineProperty3['default'])(_classNames, className, className), _classNames));\n return _react2['default'].createElement(\n 'div',\n {\n ref: this.saveSlider,\n className: sliderClassName,\n onTouchStart: disabled ? noop : this.onTouchStart,\n onMouseDown: disabled ? noop : this.onMouseDown,\n onMouseUp: disabled ? noop : this.onMouseUp,\n onKeyDown: disabled ? noop : this.onKeyDown,\n onFocus: disabled ? noop : this.onFocus,\n onBlur: disabled ? noop : this.onBlur,\n style: style\n },\n _react2['default'].createElement('div', {\n className: prefixCls + '-rail',\n style: (0, _extends3['default'])({}, maximumTrackStyle, railStyle)\n }),\n tracks,\n _react2['default'].createElement(_Steps2['default'], {\n prefixCls: prefixCls,\n vertical: vertical,\n marks: marks,\n dots: dots,\n step: step,\n included: included,\n lowerBound: this.getLowerBound(),\n upperBound: this.getUpperBound(),\n max: max,\n min: min,\n dotStyle: dotStyle,\n activeDotStyle: activeDotStyle\n }),\n handles,\n _react2['default'].createElement(_Marks2['default'], {\n className: prefixCls + '-mark',\n onClickLabel: disabled ? noop : this.onClickMarkLabel,\n vertical: vertical,\n marks: marks,\n included: included,\n lowerBound: this.getLowerBound(),\n upperBound: this.getUpperBound(),\n max: max,\n min: min\n }),\n children\n );\n }\n }]);\n return ComponentEnhancer;\n }(Component), _class.displayName = 'ComponentEnhancer(' + Component.displayName + ')', _class.propTypes = (0, _extends3['default'])({}, Component.propTypes, {\n min: _propTypes2['default'].number,\n max: _propTypes2['default'].number,\n step: _propTypes2['default'].number,\n marks: _propTypes2['default'].object,\n included: _propTypes2['default'].bool,\n className: _propTypes2['default'].string,\n prefixCls: _propTypes2['default'].string,\n disabled: _propTypes2['default'].bool,\n children: _propTypes2['default'].any,\n onBeforeChange: _propTypes2['default'].func,\n onChange: _propTypes2['default'].func,\n onAfterChange: _propTypes2['default'].func,\n handle: _propTypes2['default'].func,\n dots: _propTypes2['default'].bool,\n vertical: _propTypes2['default'].bool,\n style: _propTypes2['default'].object,\n minimumTrackStyle: _propTypes2['default'].object, // just for compatibility, will be deperecate\n maximumTrackStyle: _propTypes2['default'].object, // just for compatibility, will be deperecate\n handleStyle: _propTypes2['default'].oneOfType([_propTypes2['default'].object, _propTypes2['default'].arrayOf(_propTypes2['default'].object)]),\n trackStyle: _propTypes2['default'].oneOfType([_propTypes2['default'].object, _propTypes2['default'].arrayOf(_propTypes2['default'].object)]),\n railStyle: _propTypes2['default'].object,\n dotStyle: _propTypes2['default'].object,\n activeDotStyle: _propTypes2['default'].object,\n autoFocus: _propTypes2['default'].bool,\n onFocus: _propTypes2['default'].func,\n onBlur: _propTypes2['default'].func\n }), _class.defaultProps = (0, _extends3['default'])({}, Component.defaultProps, {\n prefixCls: 'rc-slider',\n className: '',\n min: 0,\n max: 100,\n step: 1,\n marks: {},\n handle: function handle(_ref) {\n var index = _ref.index,\n restProps = (0, _objectWithoutProperties3['default'])(_ref, ['index']);\n\n delete restProps.dragging;\n return _react2['default'].createElement(_Handle2['default'], (0, _extends3['default'])({}, restProps, { key: index }));\n },\n\n onBeforeChange: noop,\n onChange: noop,\n onAfterChange: noop,\n included: true,\n disabled: false,\n dots: false,\n vertical: false,\n trackStyle: [{}],\n handleStyle: [{}],\n railStyle: {},\n dotStyle: {},\n activeDotStyle: {}\n }), _temp;\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/common/createSlider.js\n// module id = 361\n// module chunks = 0","\"use strict\";\n\nexports.__esModule = true;\n\nvar _getPrototypeOf = require(\"../core-js/object/get-prototype-of\");\n\nvar _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);\n\nvar _getOwnPropertyDescriptor = require(\"../core-js/object/get-own-property-descriptor\");\n\nvar _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function get(object, property, receiver) {\n if (object === null) object = Function.prototype;\n var desc = (0, _getOwnPropertyDescriptor2.default)(object, property);\n\n if (desc === undefined) {\n var parent = (0, _getPrototypeOf2.default)(object);\n\n if (parent === null) {\n return undefined;\n } else {\n return get(parent, property, receiver);\n }\n } else if (\"value\" in desc) {\n return desc.value;\n } else {\n var getter = desc.get;\n\n if (getter === undefined) {\n return undefined;\n }\n\n return getter.call(receiver);\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/get.js\n// module id = 362\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/get-prototype-of\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/get-prototype-of.js\n// module id = 363\n// module chunks = 0","require('../../modules/es6.object.get-prototype-of');\nmodule.exports = require('../../modules/_core').Object.getPrototypeOf;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/get-prototype-of.js\n// module id = 364\n// module chunks = 0","// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = require('./_to-object');\nvar $getPrototypeOf = require('./_object-gpo');\n\nrequire('./_object-sap')('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.get-prototype-of.js\n// module id = 365\n// module chunks = 0","module.exports = { \"default\": require(\"core-js/library/fn/object/get-own-property-descriptor\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/get-own-property-descriptor.js\n// module id = 366\n// module chunks = 0","require('../../modules/es6.object.get-own-property-descriptor');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function getOwnPropertyDescriptor(it, key) {\n return $Object.getOwnPropertyDescriptor(it, key);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/fn/object/get-own-property-descriptor.js\n// module id = 367\n// module chunks = 0","// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = require('./_to-iobject');\nvar $getOwnPropertyDescriptor = require('./_object-gopd').f;\n\nrequire('./_object-sap')('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js\n// module id = 368\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = addEventListener;\n\nvar _EventObject = require('./EventObject');\n\nvar _EventObject2 = _interopRequireDefault(_EventObject);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction addEventListener(target, eventType, callback) {\n function wrapCallback(e) {\n var ne = new _EventObject2[\"default\"](e);\n callback.call(target, ne);\n }\n\n if (target.addEventListener) {\n target.addEventListener(eventType, wrapCallback, false);\n return {\n remove: function remove() {\n target.removeEventListener(eventType, wrapCallback, false);\n }\n };\n } else if (target.attachEvent) {\n target.attachEvent('on' + eventType, wrapCallback);\n return {\n remove: function remove() {\n target.detachEvent('on' + eventType, wrapCallback);\n }\n };\n }\n}\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/add-dom-event-listener/lib/index.js\n// module id = 369\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _EventBaseObject = require('./EventBaseObject');\n\nvar _EventBaseObject2 = _interopRequireDefault(_EventBaseObject);\n\nvar _objectAssign = require('object-assign');\n\nvar _objectAssign2 = _interopRequireDefault(_objectAssign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\n/**\n * @ignore\n * event object for dom\n * @author yiminghe@gmail.com\n */\n\nvar TRUE = true;\nvar FALSE = false;\nvar commonProps = ['altKey', 'bubbles', 'cancelable', 'ctrlKey', 'currentTarget', 'eventPhase', 'metaKey', 'shiftKey', 'target', 'timeStamp', 'view', 'type'];\n\nfunction isNullOrUndefined(w) {\n return w === null || w === undefined;\n}\n\nvar eventNormalizers = [{\n reg: /^key/,\n props: ['char', 'charCode', 'key', 'keyCode', 'which'],\n fix: function fix(event, nativeEvent) {\n if (isNullOrUndefined(event.which)) {\n event.which = !isNullOrUndefined(nativeEvent.charCode) ? nativeEvent.charCode : nativeEvent.keyCode;\n }\n\n // add metaKey to non-Mac browsers (use ctrl for PC 's and Meta for Macs)\n if (event.metaKey === undefined) {\n event.metaKey = event.ctrlKey;\n }\n }\n}, {\n reg: /^touch/,\n props: ['touches', 'changedTouches', 'targetTouches']\n}, {\n reg: /^hashchange$/,\n props: ['newURL', 'oldURL']\n}, {\n reg: /^gesturechange$/i,\n props: ['rotation', 'scale']\n}, {\n reg: /^(mousewheel|DOMMouseScroll)$/,\n props: [],\n fix: function fix(event, nativeEvent) {\n var deltaX = void 0;\n var deltaY = void 0;\n var delta = void 0;\n var wheelDelta = nativeEvent.wheelDelta;\n var axis = nativeEvent.axis;\n var wheelDeltaY = nativeEvent.wheelDeltaY;\n var wheelDeltaX = nativeEvent.wheelDeltaX;\n var detail = nativeEvent.detail;\n\n // ie/webkit\n if (wheelDelta) {\n delta = wheelDelta / 120;\n }\n\n // gecko\n if (detail) {\n // press control e.detail == 1 else e.detail == 3\n delta = 0 - (detail % 3 === 0 ? detail / 3 : detail);\n }\n\n // Gecko\n if (axis !== undefined) {\n if (axis === event.HORIZONTAL_AXIS) {\n deltaY = 0;\n deltaX = 0 - delta;\n } else if (axis === event.VERTICAL_AXIS) {\n deltaX = 0;\n deltaY = delta;\n }\n }\n\n // Webkit\n if (wheelDeltaY !== undefined) {\n deltaY = wheelDeltaY / 120;\n }\n if (wheelDeltaX !== undefined) {\n deltaX = -1 * wheelDeltaX / 120;\n }\n\n // 默认 deltaY (ie)\n if (!deltaX && !deltaY) {\n deltaY = delta;\n }\n\n if (deltaX !== undefined) {\n /**\n * deltaX of mousewheel event\n * @property deltaX\n * @member Event.DomEvent.Object\n */\n event.deltaX = deltaX;\n }\n\n if (deltaY !== undefined) {\n /**\n * deltaY of mousewheel event\n * @property deltaY\n * @member Event.DomEvent.Object\n */\n event.deltaY = deltaY;\n }\n\n if (delta !== undefined) {\n /**\n * delta of mousewheel event\n * @property delta\n * @member Event.DomEvent.Object\n */\n event.delta = delta;\n }\n }\n}, {\n reg: /^mouse|contextmenu|click|mspointer|(^DOMMouseScroll$)/i,\n props: ['buttons', 'clientX', 'clientY', 'button', 'offsetX', 'relatedTarget', 'which', 'fromElement', 'toElement', 'offsetY', 'pageX', 'pageY', 'screenX', 'screenY'],\n fix: function fix(event, nativeEvent) {\n var eventDoc = void 0;\n var doc = void 0;\n var body = void 0;\n var target = event.target;\n var button = nativeEvent.button;\n\n // Calculate pageX/Y if missing and clientX/Y available\n if (target && isNullOrUndefined(event.pageX) && !isNullOrUndefined(nativeEvent.clientX)) {\n eventDoc = target.ownerDocument || document;\n doc = eventDoc.documentElement;\n body = eventDoc.body;\n event.pageX = nativeEvent.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);\n event.pageY = nativeEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);\n }\n\n // which for click: 1 === left; 2 === middle; 3 === right\n // do not use button\n if (!event.which && button !== undefined) {\n if (button & 1) {\n event.which = 1;\n } else if (button & 2) {\n event.which = 3;\n } else if (button & 4) {\n event.which = 2;\n } else {\n event.which = 0;\n }\n }\n\n // add relatedTarget, if necessary\n if (!event.relatedTarget && event.fromElement) {\n event.relatedTarget = event.fromElement === target ? event.toElement : event.fromElement;\n }\n\n return event;\n }\n}];\n\nfunction retTrue() {\n return TRUE;\n}\n\nfunction retFalse() {\n return FALSE;\n}\n\nfunction DomEventObject(nativeEvent) {\n var type = nativeEvent.type;\n\n var isNative = typeof nativeEvent.stopPropagation === 'function' || typeof nativeEvent.cancelBubble === 'boolean';\n\n _EventBaseObject2[\"default\"].call(this);\n\n this.nativeEvent = nativeEvent;\n\n // in case dom event has been mark as default prevented by lower dom node\n var isDefaultPrevented = retFalse;\n if ('defaultPrevented' in nativeEvent) {\n isDefaultPrevented = nativeEvent.defaultPrevented ? retTrue : retFalse;\n } else if ('getPreventDefault' in nativeEvent) {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=691151\n isDefaultPrevented = nativeEvent.getPreventDefault() ? retTrue : retFalse;\n } else if ('returnValue' in nativeEvent) {\n isDefaultPrevented = nativeEvent.returnValue === FALSE ? retTrue : retFalse;\n }\n\n this.isDefaultPrevented = isDefaultPrevented;\n\n var fixFns = [];\n var fixFn = void 0;\n var l = void 0;\n var prop = void 0;\n var props = commonProps.concat();\n\n eventNormalizers.forEach(function (normalizer) {\n if (type.match(normalizer.reg)) {\n props = props.concat(normalizer.props);\n if (normalizer.fix) {\n fixFns.push(normalizer.fix);\n }\n }\n });\n\n l = props.length;\n\n // clone properties of the original event object\n while (l) {\n prop = props[--l];\n this[prop] = nativeEvent[prop];\n }\n\n // fix target property, if necessary\n if (!this.target && isNative) {\n this.target = nativeEvent.srcElement || document; // srcElement might not be defined either\n }\n\n // check if target is a text node (safari)\n if (this.target && this.target.nodeType === 3) {\n this.target = this.target.parentNode;\n }\n\n l = fixFns.length;\n\n while (l) {\n fixFn = fixFns[--l];\n fixFn(this, nativeEvent);\n }\n\n this.timeStamp = nativeEvent.timeStamp || Date.now();\n}\n\nvar EventBaseObjectProto = _EventBaseObject2[\"default\"].prototype;\n\n(0, _objectAssign2[\"default\"])(DomEventObject.prototype, EventBaseObjectProto, {\n constructor: DomEventObject,\n\n preventDefault: function preventDefault() {\n var e = this.nativeEvent;\n\n // if preventDefault exists run it on the original event\n if (e.preventDefault) {\n e.preventDefault();\n } else {\n // otherwise set the returnValue property of the original event to FALSE (IE)\n e.returnValue = FALSE;\n }\n\n EventBaseObjectProto.preventDefault.call(this);\n },\n stopPropagation: function stopPropagation() {\n var e = this.nativeEvent;\n\n // if stopPropagation exists run it on the original event\n if (e.stopPropagation) {\n e.stopPropagation();\n } else {\n // otherwise set the cancelBubble property of the original event to TRUE (IE)\n e.cancelBubble = TRUE;\n }\n\n EventBaseObjectProto.stopPropagation.call(this);\n }\n});\n\nexports[\"default\"] = DomEventObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/add-dom-event-listener/lib/EventObject.js\n// module id = 370\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * @ignore\n * base event object for custom and dom event.\n * @author yiminghe@gmail.com\n */\n\nfunction returnFalse() {\n return false;\n}\n\nfunction returnTrue() {\n return true;\n}\n\nfunction EventBaseObject() {\n this.timeStamp = Date.now();\n this.target = undefined;\n this.currentTarget = undefined;\n}\n\nEventBaseObject.prototype = {\n isEventObject: 1,\n\n constructor: EventBaseObject,\n\n isDefaultPrevented: returnFalse,\n\n isPropagationStopped: returnFalse,\n\n isImmediatePropagationStopped: returnFalse,\n\n preventDefault: function preventDefault() {\n this.isDefaultPrevented = returnTrue;\n },\n stopPropagation: function stopPropagation() {\n this.isPropagationStopped = returnTrue;\n },\n stopImmediatePropagation: function stopImmediatePropagation() {\n this.isImmediatePropagationStopped = returnTrue;\n // fixed 1.2\n // call stopPropagation implicitly\n this.stopPropagation();\n },\n halt: function halt(immediate) {\n if (immediate) {\n this.stopImmediatePropagation();\n } else {\n this.stopPropagation();\n }\n this.preventDefault();\n }\n};\n\nexports[\"default\"] = EventBaseObject;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/add-dom-event-listener/lib/EventBaseObject.js\n// module id = 371\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _defineProperty2 = require('babel-runtime/helpers/defineProperty');\n\nvar _defineProperty3 = _interopRequireDefault(_defineProperty2);\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar calcPoints = function calcPoints(vertical, marks, dots, step, min, max) {\n (0, _warning2['default'])(dots ? step > 0 : true, '`Slider[step]` should be a positive number in order to make Slider[dots] work.');\n var points = Object.keys(marks).map(parseFloat);\n if (dots) {\n for (var i = min; i <= max; i += step) {\n if (points.indexOf(i) === -1) {\n points.push(i);\n }\n }\n }\n return points;\n};\n\nvar Steps = function Steps(_ref) {\n var prefixCls = _ref.prefixCls,\n vertical = _ref.vertical,\n marks = _ref.marks,\n dots = _ref.dots,\n step = _ref.step,\n included = _ref.included,\n lowerBound = _ref.lowerBound,\n upperBound = _ref.upperBound,\n max = _ref.max,\n min = _ref.min,\n dotStyle = _ref.dotStyle,\n activeDotStyle = _ref.activeDotStyle;\n\n var range = max - min;\n var elements = calcPoints(vertical, marks, dots, step, min, max).map(function (point) {\n var _classNames;\n\n var offset = Math.abs(point - min) / range * 100 + '%';\n\n var isActived = !included && point === upperBound || included && point <= upperBound && point >= lowerBound;\n var style = vertical ? (0, _extends3['default'])({ bottom: offset }, dotStyle) : (0, _extends3['default'])({ left: offset }, dotStyle);\n if (isActived) {\n style = (0, _extends3['default'])({}, style, activeDotStyle);\n }\n\n var pointClassName = (0, _classnames2['default'])((_classNames = {}, (0, _defineProperty3['default'])(_classNames, prefixCls + '-dot', true), (0, _defineProperty3['default'])(_classNames, prefixCls + '-dot-active', isActived), _classNames));\n\n return _react2['default'].createElement('span', { className: pointClassName, style: style, key: point });\n });\n\n return _react2['default'].createElement(\n 'div',\n { className: prefixCls + '-step' },\n elements\n );\n};\n\nSteps.propTypes = {\n prefixCls: _propTypes2['default'].string,\n activeDotStyle: _propTypes2['default'].object,\n dotStyle: _propTypes2['default'].object,\n min: _propTypes2['default'].number,\n max: _propTypes2['default'].number,\n upperBound: _propTypes2['default'].number,\n lowerBound: _propTypes2['default'].number,\n included: _propTypes2['default'].bool,\n dots: _propTypes2['default'].bool,\n step: _propTypes2['default'].number,\n marks: _propTypes2['default'].object,\n vertical: _propTypes2['default'].bool\n};\n\nexports['default'] = Steps;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/common/Steps.js\n// module id = 372\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _defineProperty2 = require('babel-runtime/helpers/defineProperty');\n\nvar _defineProperty3 = _interopRequireDefault(_defineProperty2);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar Marks = function Marks(_ref) {\n var className = _ref.className,\n vertical = _ref.vertical,\n marks = _ref.marks,\n included = _ref.included,\n upperBound = _ref.upperBound,\n lowerBound = _ref.lowerBound,\n max = _ref.max,\n min = _ref.min,\n onClickLabel = _ref.onClickLabel;\n\n var marksKeys = Object.keys(marks);\n var marksCount = marksKeys.length;\n var unit = marksCount > 1 ? 100 / (marksCount - 1) : 100;\n var markWidth = unit * 0.9;\n\n var range = max - min;\n var elements = marksKeys.map(parseFloat).sort(function (a, b) {\n return a - b;\n }).map(function (point) {\n var _classNames;\n\n var markPoint = marks[point];\n var markPointIsObject = typeof markPoint === 'object' && !_react2['default'].isValidElement(markPoint);\n var markLabel = markPointIsObject ? markPoint.label : markPoint;\n if (!markLabel && markLabel !== 0) {\n return null;\n }\n\n var isActive = !included && point === upperBound || included && point <= upperBound && point >= lowerBound;\n var markClassName = (0, _classnames2['default'])((_classNames = {}, (0, _defineProperty3['default'])(_classNames, className + '-text', true), (0, _defineProperty3['default'])(_classNames, className + '-text-active', isActive), _classNames));\n\n var bottomStyle = {\n marginBottom: '-50%',\n bottom: (point - min) / range * 100 + '%'\n };\n\n var leftStyle = {\n width: markWidth + '%',\n marginLeft: -markWidth / 2 + '%',\n left: (point - min) / range * 100 + '%'\n };\n\n var style = vertical ? bottomStyle : leftStyle;\n var markStyle = markPointIsObject ? (0, _extends3['default'])({}, style, markPoint.style) : style;\n return _react2['default'].createElement(\n 'span',\n {\n className: markClassName,\n style: markStyle,\n key: point,\n onMouseDown: function onMouseDown(e) {\n return onClickLabel(e, point);\n },\n onTouchStart: function onTouchStart(e) {\n return onClickLabel(e, point);\n }\n },\n markLabel\n );\n });\n\n return _react2['default'].createElement(\n 'div',\n { className: className },\n elements\n );\n};\n\nMarks.propTypes = {\n className: _propTypes2['default'].string,\n vertical: _propTypes2['default'].bool,\n marks: _propTypes2['default'].object,\n included: _propTypes2['default'].bool,\n upperBound: _propTypes2['default'].number,\n lowerBound: _propTypes2['default'].number,\n max: _propTypes2['default'].number,\n min: _propTypes2['default'].number,\n onClickLabel: _propTypes2['default'].func\n};\n\nexports['default'] = Marks;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/common/Marks.js\n// module id = 373\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends2 = require('babel-runtime/helpers/extends');\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _defineProperty2 = require('babel-runtime/helpers/defineProperty');\n\nvar _defineProperty3 = _interopRequireDefault(_defineProperty2);\n\nvar _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');\n\nvar _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);\n\nvar _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = require('babel-runtime/helpers/createClass');\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');\n\nvar _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);\n\nvar _inherits2 = require('babel-runtime/helpers/inherits');\n\nvar _inherits3 = _interopRequireDefault(_inherits2);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _classnames = require('classnames');\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _addEventListener = require('rc-util/lib/Dom/addEventListener');\n\nvar _addEventListener2 = _interopRequireDefault(_addEventListener);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar Handle = function (_React$Component) {\n (0, _inherits3['default'])(Handle, _React$Component);\n\n function Handle() {\n var _ref;\n\n var _temp, _this, _ret;\n\n (0, _classCallCheck3['default'])(this, Handle);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = (0, _possibleConstructorReturn3['default'])(this, (_ref = Handle.__proto__ || Object.getPrototypeOf(Handle)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n clickFocused: false\n }, _this.setHandleRef = function (node) {\n _this.handle = node;\n }, _this.handleMouseUp = function () {\n if (document.activeElement === _this.handle) {\n _this.setClickFocus(true);\n }\n }, _this.handleBlur = function () {\n _this.setClickFocus(false);\n }, _this.handleKeyDown = function () {\n _this.setClickFocus(false);\n }, _temp), (0, _possibleConstructorReturn3['default'])(_this, _ret);\n }\n\n (0, _createClass3['default'])(Handle, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n // mouseup won't trigger if mouse moved out of handle,\n // so we listen on document here.\n this.onMouseUpListener = (0, _addEventListener2['default'])(document, 'mouseup', this.handleMouseUp);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.onMouseUpListener) {\n this.onMouseUpListener.remove();\n }\n }\n }, {\n key: 'setClickFocus',\n value: function setClickFocus(focused) {\n this.setState({ clickFocused: focused });\n }\n }, {\n key: 'clickFocus',\n value: function clickFocus() {\n this.setClickFocus(true);\n this.focus();\n }\n }, {\n key: 'focus',\n value: function focus() {\n this.handle.focus();\n }\n }, {\n key: 'blur',\n value: function blur() {\n this.handle.blur();\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n prefixCls = _props.prefixCls,\n vertical = _props.vertical,\n offset = _props.offset,\n style = _props.style,\n disabled = _props.disabled,\n min = _props.min,\n max = _props.max,\n value = _props.value,\n tabIndex = _props.tabIndex,\n restProps = (0, _objectWithoutProperties3['default'])(_props, ['prefixCls', 'vertical', 'offset', 'style', 'disabled', 'min', 'max', 'value', 'tabIndex']);\n\n\n var className = (0, _classnames2['default'])(this.props.className, (0, _defineProperty3['default'])({}, prefixCls + '-handle-click-focused', this.state.clickFocused));\n\n var postionStyle = vertical ? { bottom: offset + '%' } : { left: offset + '%' };\n var elStyle = (0, _extends3['default'])({}, style, postionStyle);\n\n return _react2['default'].createElement('div', (0, _extends3['default'])({\n ref: this.setHandleRef,\n tabIndex: disabled ? null : tabIndex || 0\n }, restProps, {\n className: className,\n style: elStyle,\n onBlur: this.handleBlur,\n onKeyDown: this.handleKeyDown\n\n // aria attribute\n , role: 'slider',\n 'aria-valuemin': min,\n 'aria-valuemax': max,\n 'aria-valuenow': value,\n 'aria-disabled': !!disabled\n }));\n }\n }]);\n return Handle;\n}(_react2['default'].Component);\n\nexports['default'] = Handle;\n\n\nHandle.propTypes = {\n prefixCls: _propTypes2['default'].string,\n className: _propTypes2['default'].string,\n vertical: _propTypes2['default'].bool,\n offset: _propTypes2['default'].number,\n style: _propTypes2['default'].object,\n disabled: _propTypes2['default'].bool,\n min: _propTypes2['default'].number,\n max: _propTypes2['default'].number,\n value: _propTypes2['default'].number,\n tabIndex: _propTypes2['default'].number\n};\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-slider/lib/Handle.js\n// module id = 374\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33, // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34, // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35, // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36, // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37, // also NUM_WEST\n /**\n * UP\n */\n UP: 38, // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39, // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40, // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45, // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46, // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63, // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91, // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186, // needs localization\n /**\n * DASH\n */\n DASH: 189, // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187, // needs localization\n /**\n * COMMA\n */\n COMMA: 188, // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190, // needs localization\n /**\n * SLASH\n */\n SLASH: 191, // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192, // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222, // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219, // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220, // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221, // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229\n};\n\n/*\n whether text and modified key is entered at the same time.\n */\nKeyCode.isTextModifyingKeyEvent = function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n};\n\n/*\n whether character is entered.\n */\nKeyCode.isCharacterKey = function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigation.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n};\n\nexports['default'] = KeyCode;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/rc-util/lib/KeyCode.js\n// module id = 375\n// module chunks = 0","import React, { Component } from 'react';\r\nimport { PrimaryButton } from '../../components/BasicForm';\r\nimport { PrimaryFormNav } from '../../components/PrimaryFormNav';\r\nimport { relationships } from '../../utils/relationshipList';\r\n\r\nclass SelectedOffenders extends Component {\r\n\tstate = {\r\n\t\theading: \"Inmate(s) You've Chosen to Visit\",\r\n\t\tshowProgressBar: true,\r\n\t\tpageId: 'selection-review',\r\n\t\tnonImmediateFamily: 0,\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tif(!stepData.access) {\r\n\t\t\tthis.props.previousStep(stepData);\r\n\t\t}\r\n\t\tthis.props.setHeaderDisplay(\r\n\t\t\tthis.state.heading,\r\n \t\tstepData.displayStep,\r\n\t\t\tthis.state.showProgressBar,\r\n\t\t\tthis.state.pageId,\r\n \t\tstepData.step\r\n\t\t);\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tdocument.getElementById('root').scrollIntoView();\r\n\t\twindow.scrollBy(0, -10);\r\n\t}\r\n\thandleRemoveOffender = (offenderId) => {\r\n\t\tconst selectedOffenders = this.props.fields.selectedOffenders;\r\n\t\tlet affirmative = window.confirm(\"Are you sure you want to remove the selected inmate?\");\r\n\t\tif(affirmative) {\r\n\t\t\tthis.props.removeSelectedOffender(offenderId)\r\n\t\t}\r\n\t\tif(Object.keys(selectedOffenders).length < 1) {\r\n\t\t\tthis.handlePrevious();\r\n\t\t} else {\r\n\t\t\tthis.countNonImmediateFam();\r\n\t\t}\r\n\t}\r\n\tcountNonImmediateFam() {\r\n\t\tconst selectedOffenders = this.props.fields.selectedOffenders;\r\n\t\tlet nonImmediateFamily = 0;\r\n\t\tObject.keys(selectedOffenders).map(offenderId => {\r\n\t\t\tconst offender = selectedOffenders[offenderId];\r\n\t\t\tif(!offender.RelationshipToVisitor.immediateFamily) {\r\n\t\t\t\tnonImmediateFamily += 1;\r\n\t\t\t}\r\n\t\t\treturn offender;\r\n\t\t})\r\n\t\treturn nonImmediateFamily;\r\n\t}\r\n\thandleEditRelationship = () => {\r\n\t\tthis.props.history.push('/visitor-offender-relationship')\r\n\t}\r\n\thandlePrevious = () => {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tthis.props.previousStep(stepData);\r\n\t}\r\n\thandleSubmit = () => {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tthis.props.nextStep(stepData);\r\n\t}\r\n\trender() {\r\n\t\tconst fields = this.props.fields;\r\n\t\tconst selectedOffenders = fields.selectedOffenders;\r\n\t\t\r\n\t\treturn(\r\n\t\t\t\r\n\t\t\t\t
The list below shows the inmate(s) you have selected to visit.
\r\n\t\t\t\t
\r\n\t\t\t\t\t{Object.keys(selectedOffenders).map(id => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tname \r\n\t\t\t\t\t\t\t\t{selectedOffenders[id].FullName} // \r\n\t\t\t\t\t\t\t\tage \r\n\t\t\t\t\t\t\t\t{selectedOffenders[id].Age}, \r\n\t\t\t\t\t\t\t\trace \r\n\t\t\t\t\t\t\t\t{selectedOffenders[id].Race}, \r\n\t\t\t\t\t\t\t\tsex \r\n\t\t\t\t\t\t\t\t{selectedOffenders[id].Gender} \r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
Alias: \r\n\t\t\t\t\t\t\t\t\t{selectedOffenders[id].Alias} \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
Inmate ID #: \r\n\t\t\t\t\t\t\t\t\t{selectedOffenders[id].OffenderId} \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
Location: \r\n\t\t\t\t\t\t\t\t\t{selectedOffenders[id].LocationName} \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
Release Date: \r\n\t\t\t\t\t\t\t\t\t{selectedOffenders[id].ProjectedReleaseDate} \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
Relationship to Visitor: \r\n\t\t\t\t\t\t\t\t\t
{relationships[selectedOffenders[id].RelationshipToVisitor.value]} \r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t))}\r\n\t\t\t\t \r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default SelectedOffenders;\n\n\n// WEBPACK FOOTER //\n// ./src/pages/SelectedOffenders/SelectedOffenders.js","import React, { Component } from \"react\";\r\nimport { PrimaryButton } from \"../../components/BasicForm\";\r\nimport { VisitorRelationshipForm } from \"../../components/VisitorRelationshipForm\";\r\nclass VisitorOffenderRelationship extends Component {\r\n state = {\r\n heading: \"Your Relationship to Inmate\",\r\n showProgressBar: true,\r\n pageId: \"relationship-to-offender\",\r\n nonImmediateFamily: 0\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handleInputChange = e => {\r\n this.props.handleInputChange(e);\r\n // this.countNonImmediateFam();\r\n };\r\n countNonImmediateFam() {\r\n const selectedOffenders = this.props.fields.selectedOffenders;\r\n let nonImmediateFamily = 0;\r\n Object.keys(selectedOffenders).map(offenderId => {\r\n const offender = selectedOffenders[offenderId];\r\n if (!offender.RelationshipToVisitor.immediateFamily) {\r\n nonImmediateFamily += 1;\r\n }\r\n return offender;\r\n });\r\n return nonImmediateFamily;\r\n }\r\n handleRemoveOffender = offenderId => {\r\n const selectedOffenders = this.props.fields.selectedOffenders;\r\n let affirmative = window.confirm(\r\n \"Are you sure you want to remove the selected inmate?\"\r\n );\r\n if (affirmative) {\r\n this.props.removeSelectedOffender(offenderId);\r\n }\r\n if (Object.keys(selectedOffenders).length < 1) {\r\n this.handlePrevious();\r\n }\r\n };\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = () => {\r\n const isErr = this.props.validateRelationshipFields();\r\n const stepData = this.props.stepData;\r\n const nonImmediateFamily = this.countNonImmediateFam();\r\n\r\n if (!isErr && !(nonImmediateFamily > 1)) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n const selectedOffenders = fields.selectedOffenders;\r\n const relationshipTypeErr = document.getElementById(\r\n \"non-immediate-family-err\"\r\n );\r\n let errFields = [];\r\n Object.keys(selectedOffenders).map(offenderId => {\r\n if (\r\n selectedOffenders[offenderId].RelationshipToVisitor.className ===\r\n \"input-err\"\r\n ) {\r\n errFields.push(offenderId);\r\n }\r\n return offenderId;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n if (relationshipTypeErr) {\r\n relationshipTypeErr.scrollIntoView();\r\n } else if (firstErr) {\r\n firstErr.scrollIntoView();\r\n }\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n const selectedOffenders = fields.selectedOffenders;\r\n const nonImmediateFamily = this.countNonImmediateFam();\r\n return (\r\n \r\n
\r\n Select your relationship to the inmate listed below.\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default VisitorOffenderRelationship;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/VisitorOffenderRelationship/VisitorOffenderRelationship.js","import React from 'react';\r\nimport { PrimaryButton, SelectInput} from '../BasicForm';\r\nimport SelectFieldOptions from '../../utils/selectFieldOptions';\r\n\r\nexport const VisitorRelationshipForm = (props) => (\r\n\t\r\n\t\t\r\n\t\t\t{props.fullName} \r\n\t\t
\r\n\t\t \r\n\t\t \r\n\t \r\n)\n\n\n// WEBPACK FOOTER //\n// ./src/components/VisitorRelationshipForm/VisitorRelationshipForm.js","import React, { Component } from \"react\";\r\nimport { TextInput } from \"../../components/BasicForm\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { RadioMultiButton } from \"../../components/RadioMultiButton\";\r\nimport { DateField } from \"../../components/DateField\";\r\n\r\nclass ApplicantInfo extends Component {\r\n state = {\r\n heading: \"Your Information\",\r\n showProgressBar: true,\r\n badge: 50,\r\n pageId: \"applicant-info\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step,\r\n this.state.badge\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default ApplicantInfo;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicantInfo/ApplicantInfo.js","import React, { Component } from \"react\";\r\nimport { TextInput } from \"../../components/BasicForm\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { RadioMultiButton } from \"../../components/RadioMultiButton\";\r\n\r\nclass ApplicantPhysical extends Component {\r\n state = {\r\n heading: \"Your Physical Description\",\r\n showProgressBar: true,\r\n pageId: \"applicant-physical\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default ApplicantPhysical;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicantPhysical/ApplicantPhysical.js","import React, { Component } from \"react\";\r\nimport { TextInput, SelectInput, EmailInput } from \"../../components/BasicForm\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { RadioMultiButton } from \"../../components/RadioMultiButton\";\r\nimport countryList from \"../../utils/countryList\";\r\nimport usStateList from \"../../utils/usStateList\";\r\n\r\nclass ApplicantContact extends Component {\r\n state = {\r\n heading: \"Your Contact Information\",\r\n showProgressBar: true,\r\n pageId: \"applicant-contact\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n return (\r\n \r\n
All fields are required.
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default ApplicantContact;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicantContact/ApplicantContact.js","import { Countries } from './countries';\r\nconst countryObj = Countries;\r\nconst countryList = [];\r\n\r\nObject.keys(countryObj).map(countryName => {\r\n\tconst countryCode = countryObj[countryName];\r\n\tconst countryOpt = {\r\n\t\tlabel: countryName,\r\n\t\tvalue: countryCode\r\n\t}\r\n\tif(countryObj[countryName] === \"United States\") {\r\n\t\tcountryOpt.selected = \"selected\";\r\n\t}\r\n\tcountryList.push(countryOpt);\r\n\treturn countryName;\r\n});\r\n\r\nexport default countryList;\n\n\n// WEBPACK FOOTER //\n// ./src/utils/countryList.js","import React, { Component } from \"react\";\r\nimport { SecondaryFormNav } from \"../../components/SecondaryFormNav\";\r\nimport { CertCheckbox } from \"../../components/CertCheckbox\";\r\n\r\nclass AddMinor extends Component {\r\n state = {\r\n heading: \"Add a Minor to Your Application?\",\r\n showProgressBar: true,\r\n pageId: \"add-minor\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n this.props.fields.minorCertification.value = false;\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handleNoMinor = () => {\r\n const stepData = this.props.stepData;\r\n stepData.altForward = true;\r\n this.props.nextStep(stepData);\r\n };\r\n handleAddMinor = fields => {\r\n const stepData = this.props.stepData;\r\n const isErr = this.props.validateStep(fields);\r\n stepData.altForward = false;\r\n if (!isErr) {\r\n this.props.addMinor();\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n return (\r\n \r\n
\r\n If you would like to add a minor to your visitation application, you\r\n must be:\r\n
\r\n
\r\n A parent or legal guardian of the minor OR \r\n \r\n An individual with notarized written approval from the minor’s\r\n parent or legal guardian.\r\n \r\n \r\n
\r\n If the above is true, then you must be able to verify:\r\n
\r\n
\r\n You meet the above criteria AND \r\n \r\n The minor is not a victim of the crime of the inmate they want to\r\n visit\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default AddMinor;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/AddMinor/AddMinor.js","import React from 'react';\r\nimport { PrimaryButton } from '../BasicForm';\r\n\r\nexport const SecondaryFormNav = (props) => (\r\n\t\r\n\t\t
\r\n\t\t
\t\t\t\r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/SecondaryFormNav/SecondaryFormNav.js","import React from 'react';\r\n\r\nexport const CertCheckbox = (props) => (\r\n\t\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t \r\n\t\t \r\n\t\t \r\n\t\t\r\n \t\t{props.errMessage}
\r\n \t \r\n\t \r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/CertCheckbox/CertCheckbox.js","import React, { Component } from \"react\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { RadioBinary, RadioBinaryHeader } from \"../../components/RadioBinary\";\r\n\r\nclass MinorQuestionnaire extends Component {\r\n state = {\r\n heading: \"Minor Visitor Questionnaire\",\r\n showProgressBar: true,\r\n pageId: \"minor-questionnaire\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n if (firstErr) {\r\n firstErr.scrollIntoView();\r\n }\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default MinorQuestionnaire;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/MinorQuestionnaire/MinorQuestionnaire.js","import React, { Component } from 'react';\r\nimport { PrimaryFormNav } from '../../components/PrimaryFormNav';\r\nimport { TextInput } from '../../components/BasicForm';\r\nimport { RadioMultiButton } from '../../components/RadioMultiButton';\r\nimport { DateField } from '../../components/DateField';\r\n\r\nclass MinorInfo extends Component {\r\n\tstate = {\r\n\t\theading: \"Minor's Visitor Information\",\r\n\t\tshowProgressBar: true,\r\n\t\tpageId: 'minor-information',\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tif(!stepData.access) {\r\n\t\t\tthis.props.previousStep(stepData);\r\n\t\t}\r\n\t\tthis.props.setHeaderDisplay(\r\n\t\t\tthis.state.heading,\r\n \t\tstepData.displayStep,\r\n\t\t\tthis.state.showProgressBar,\r\n\t\t\tthis.state.pageId,\r\n \t\tstepData.step\r\n\t\t);\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tdocument.getElementById('root').scrollIntoView();\r\n\t\twindow.scrollBy(0, -10);\r\n\t}\r\n\thandlePrevious = () => {\r\n\t\tconst stepData = this.props.stepData;\r\n\t\tthis.props.previousStep(stepData)\r\n\t}\r\n\thandleSubmit = (fields) => {\r\n\t\tconst isErr = this.props.validateStep(fields); \r\n\t const stepData = this.props.stepData;\r\n\t \r\n\t if(!isErr) {\r\n\t \tthis.props.nextStep(stepData);\r\n\t } else {\r\n\t \tthis.scrollToError()\r\n\t }\r\n\t}\r\n\tscrollToError = () => {\r\n\t\tconst fields = this.props.fields;\r\n\t\tlet errFields = [];\r\n\t\tObject.keys(fields).map((fieldName) => {\r\n\t\t\tif(fields[fieldName].className === \"input-err\") {\r\n\t\t\t\terrFields.push(fieldName);\r\n\t\t\t}\r\n\t\t\treturn fieldName;\r\n\t\t})\r\n\t\tconst firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n\t\tfirstErr.scrollIntoView();\r\n\t}\r\n\trender() {\r\n\t\tconst fields = this.props.fields;\r\n\r\n\t\treturn(\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n}\r\n\r\nexport default MinorInfo;\n\n\n// WEBPACK FOOTER //\n// ./src/pages/MinorInfo/MinorInfo.js","import React, { Component } from \"react\";\r\nimport { PrimaryFormNav } from \"../../components/PrimaryFormNav\";\r\nimport { MinorOffenderSelectionCard } from \"../../components/MinorOffenderSelectionCard\";\r\nclass MinorVisitSelection extends Component {\r\n state = {\r\n heading: \"Who Will the Minor Visit?\",\r\n showProgressBar: true,\r\n badge: 75,\r\n pageId: \"minor-visitation-select\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step,\r\n this.state.badge\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handleSubmit = () => {\r\n const isErr = this.props.validateMinorRelationshipFields();\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n } else {\r\n this.scrollToError();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n const minorSelectedOffenders = fields.minorSelectedOffenders;\r\n let errFields = [];\r\n Object.keys(minorSelectedOffenders).map(offenderId => {\r\n if (\r\n minorSelectedOffenders[offenderId].RelationshipToMinor.className ===\r\n \"input-err\"\r\n ) {\r\n errFields.push(offenderId);\r\n }\r\n return offenderId;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n const selectedOffenders = fields.selectedOffenders;\r\n const minorSelectedOffenders = fields.minorSelectedOffenders;\r\n return (\r\n \r\n
\r\n Minor Applying for Visitation: \r\n {this.props.fields.currentMinor.fields.firstName.value} \r\n {this.props.fields.currentMinor.fields.middleName.value} \r\n {this.props.fields.currentMinor.fields.lastName.value}\r\n
\r\n
\r\n Check the inmate(s) you would like the minor to visit, then select the \r\n inmate's relationship to the minor.\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default MinorVisitSelection;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/MinorVisitSelection/MinorVisitSelection.js","import React from 'react';\r\nimport { SelectInput } from '../BasicForm';\r\nimport { CertCheckbox } from '../CertCheckbox';\r\nimport SelectFieldOptions from '../../utils/selectFieldOptions';\r\n\r\nexport const MinorOffenderSelectionCard = (props) => (\r\n\t\r\n\t\t \r\n\t\t\r\n\t\t\tname \r\n\t\t\t{props.fullName} // \r\n\t\t\tage \r\n\t\t\t{props.age}, \r\n\t\t\trace \r\n\t\t\t{props.race}, \r\n\t\t\tsex \r\n\t\t\t{props.sex} \r\n\t\t \r\n\t\t\r\n\t\t\t\r\n\t\t\t\t
Alias: \r\n\t\t\t\t{props.alias} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Inmate ID #: \r\n\t\t\t\t{props.offenderId} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Location: \r\n\t\t\t\t{props.locationName} \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t
Release Date: \r\n\t\t\t\t{props.projectedReleaseDate} \r\n\t\t\t\r\n\t\t \r\n\t\t \r\n\r\n\t \r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/MinorOffenderSelectionCard/MinorOffenderSelectionCard.js","import React, { Component } from \"react\";\r\nimport { SecondaryFormNav } from \"../../components/SecondaryFormNav\";\r\nimport { MinorReviewCard } from \"../../components/MinorReviewCard\";\r\nimport moment from \"moment\";\r\n\r\nclass MinorReview extends Component {\r\n state = {\r\n heading: \"Review Added Minor(s)\",\r\n showProgressBar: true,\r\n pageId: \"review-added-minor\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handleOffenderEdit = minorId => {\r\n this.props.setCurrentMinor(minorId);\r\n this.props.history.push(\"/minor-visit-selection\");\r\n };\r\n handleMinorEdit = minorId => {\r\n this.props.setCurrentMinor(minorId);\r\n this.props.history.push(\"/minor-information\");\r\n };\r\n handlePrimaryClick = () => {\r\n const stepData = this.props.stepData;\r\n this.props.nextStep(stepData);\r\n };\r\n handleSecondaryClick = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n const selectedMinors = fields.selectedMinors;\r\n return (\r\n \r\n
Your application includes the following minor(s):
\r\n
\r\n {Object.keys(selectedMinors).map(minorId => {\r\n const minor = selectedMinors[minorId];\r\n const minorFields = minor.fields;\r\n return (\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default MinorReview;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/MinorReview/MinorReview.js","import React from \"react\";\r\nimport { PrimaryButton } from \"../BasicForm\";\r\n\r\nexport const MinorReviewCard = props => (\r\n \r\n \r\n Minor: \r\n \r\n {props.firstName} {props.middleName} {props.lastName}\r\n \r\n \r\n \r\n
Date of Birth: \r\n {props.dob} \r\n \r\n \r\n
Last 4 of Minor's SSN: \r\n {props.ssn} \r\n \r\n \r\n
Place of Birth: \r\n {props.placeOfBirth} \r\n \r\n \r\n
Race: \r\n {props.getOptionName(props.race, props.race.value)} \r\n \r\n \r\n
Sex: \r\n {props.getOptionName(props.sex, props.sex.value)} \r\n \r\n \r\n {Object.keys(props.selectedOffenders).map(offenderId => {\r\n const offender = props.selectedOffenders[offenderId];\r\n return (\r\n \r\n Applying to Visit: \r\n {offender.FullName} \r\n \r\n \r\n
Location \r\n {offender.LocationName} \r\n \r\n \r\n );\r\n })}\r\n \r\n);\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/MinorReviewCard/MinorReviewCard.js","import React, { Component } from \"react\";\r\nimport { PrimaryButton } from \"../../components/BasicForm\";\r\nimport { CertCheckbox } from \"../../components/CertCheckbox\";\r\nimport { VisitorInfoCard } from \"../../components/VisitorInfoCard\";\r\nimport { SelectedMinorInfoCard } from \"../../components/SelectedMinorInfoCard\";\r\nimport { SelectedMinorReview } from \"../../components/SelectedMinorReview\";\r\nimport { OffenderReviewCard } from \"../../components/OffenderReviewCard\";\r\nimport { formatFields } from \"../../utils/formatFields\";\r\nimport { relationships } from \"../../utils/relationshipList\";\r\n\r\nclass ApplicationReview extends Component {\r\n state = {\r\n heading: \"Review Your Application\",\r\n showProgressBar: true,\r\n pageId: \"application-review\",\r\n applicantFieldsErr: false,\r\n validMinors: {},\r\n minorFieldsErr: false\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n this.props.fields.finalAuthorization.value = false;\r\n this.validateFatalFields(Object.keys(this.props.fatalApplicantFields));\r\n this.validateMinorFatalFields(this.props.fields.selectedMinors);\r\n this.validateNonFatalFields(this.props.nonFatalApplicantFields);\r\n // this.validateNonFatalMinorFields(this.props.fields.selectedMinors);\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n validateFatalFields(fields) {\r\n this.props.validateStep(fields);\r\n }\r\n validateMinorFatalFields(minors) {\r\n const fatalFields = [\r\n \"gangAssociation\",\r\n \"victimOfOffender\",\r\n \"courtSupervision\"\r\n ];\r\n Object.keys(minors).map(minorId => {\r\n this.props.setCurrentMinor(minorId);\r\n this.props.validateMinorStep(fatalFields);\r\n return minorId;\r\n });\r\n }\r\n validateNonFatalFields = applicantFields => {\r\n const isApplicantFieldsErr = this.props.validateStep(applicantFields);\r\n if (isApplicantFieldsErr) {\r\n this.setState({\r\n applicantFieldsErr: true\r\n });\r\n }\r\n };\r\n // validateNonFatalMinorFields = (minors) => {\r\n // let isMinorFieldsErr = false;\r\n // let validMinors = {};\r\n // const self = this;\r\n // Object.keys(minors).map((minorId) => {\r\n // self.props.setCurrentMinor(minorId);\r\n // const minorErr = self.props.validateMinorStep(Object.keys(minors[minorId].fields));\r\n // validMinors[minorId] = minorErr;\r\n // if(minorErr) {\r\n // isMinorFieldsErr = true;\r\n // };\r\n // });\r\n\r\n // this.setState({\r\n // validMinors: validMinors,\r\n // minorFieldsErr: isMinorFieldsErr,\r\n // });\r\n // }\r\n handleOffenderEdit = minorId => {\r\n this.props.setCurrentMinor(minorId);\r\n this.props.history.push(\"/minor-visit-selection\");\r\n };\r\n handleMinorEdit = minorId => {\r\n this.props.setCurrentMinor(minorId);\r\n this.props.history.push(\"/minor-information\");\r\n };\r\n handleEditClick = options => {\r\n if (options.minorId) {\r\n this.props.setCurrentMinor(options.minorId);\r\n }\r\n this.props.history.push(options.url);\r\n };\r\n handleSubmitApplication = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n\r\n if (\r\n !isErr &&\r\n !this.state.applicantFieldsErr &&\r\n !this.state.minorFieldsErr\r\n ) {\r\n this.props.handleSubmitApplication();\r\n } else if (isErr) {\r\n this.scrollToError();\r\n } else {\r\n this.scrollToApplicant();\r\n }\r\n };\r\n scrollToError = () => {\r\n const fields = this.props.fields;\r\n let errFields = [];\r\n Object.keys(fields).map(fieldName => {\r\n if (fields[fieldName].className === \"input-err\") {\r\n errFields.push(fieldName);\r\n }\r\n return fieldName;\r\n });\r\n const firstErr = document.querySelectorAll(`[name=\"${errFields[0]}\"]`)[0];\r\n firstErr.scrollIntoView();\r\n };\r\n scrollToApplicant = () => {\r\n const applicantSection = document.querySelectorAll(\".section-error\")[0];\r\n applicantSection.scrollIntoView();\r\n };\r\n render() {\r\n const fields = this.props.fields;\r\n const visitorFields = fields.visitorFields;\r\n const visitorQuestFields = formatFields(visitorFields);\r\n const selectedOffenders = fields.selectedOffenders;\r\n const selectedMinors = fields.selectedMinors;\r\n console.log('field', fields);\r\n return (\r\n \r\n
\r\n Please review your answers before submitting the application.\r\n
\r\n
\r\n
Visitor Questionnaire \r\n
\r\n
\r\n Your responses to the Visitor Questionnaire are listed below.\r\n
\r\n
\r\n
\r\n
\r\n
Types of Visitation \r\n
\r\n
\r\n Your response to the Types of Visitation question is listed below.\r\n
\r\n
\r\n
\r\n
\r\n
Inmate Information \r\n
\r\n
\r\n Below are the inmates you have selected to visit.\r\n
\r\n
\r\n
\r\n {Object.keys(selectedOffenders).map(id => {\r\n const offender = selectedOffenders[id];\r\n return (\r\n \r\n );\r\n })}\r\n \r\n
\r\n {this.state.applicantFieldsErr ? (\r\n
\r\n There are one or more errors in your application. Please click the\r\n \"Edit\" button to fix errors in this section. Otherwise, you will\r\n not be able to submit your application\r\n
\r\n ) : (\r\n false\r\n )}\r\n
Your Information \r\n
\r\n
\r\n Your responses to the Your Information section are listed below. \r\n
\r\n
\r\n
\r\n {Object.keys(selectedMinors).length > 0 ? (\r\n Object.keys(selectedMinors).map(minorId => {\r\n const minor = selectedMinors[minorId];\r\n const offenders = minor.selectedOffenders;\r\n const minorFields = minor.fields;\r\n const minorErr = this.state.validMinors[minorId];\r\n return (\r\n
\r\n
\r\n {minorErr ? (\r\n
\r\n There are one or more errors in your application. Please\r\n click the \"Edit\" button to fix errors in this section.\r\n Otherwise, you will not be able to submit your application\r\n
\r\n ) : (\r\n false\r\n )}\r\n
Minor's Information \r\n
\r\n
\r\n Your responses to the Minor Information section are listed below. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n })\r\n ) : (\r\n
\r\n
Minor's Information \r\n
\r\n
\r\n You have not added a minor to this application.\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default ApplicationReview;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicationReview/ApplicationReview.js","import React from \"react\";\r\n\r\nexport const VisitorInfoCard = props => (\r\n \r\n
\r\n visitor name \r\n \r\n {props.firstName} {props.middleName} {props.lastName}\r\n \r\n \r\n
\r\n \r\n
Alias: \r\n {props.otherName} \r\n \r\n \r\n
ID Type/Number: \r\n \r\n {props.applicantIdType}/{props.applicantIdNumber}\r\n \r\n \r\n \r\n
Last 4 of SSN: \r\n {props.applicantSsn} \r\n \r\n \r\n
Physical Description: \r\n \r\n {props.applicantRace}, \r\n {props.applicantSex}, \r\n {props.applicantHeightFt}'{props.applicantHeightIn}\", \r\n {props.applicantHair} Hair, \r\n {props.applicantEyes} Eyes, \r\n {props.applicantWeight} lbs.\r\n \r\n \r\n \r\n
\r\n);\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/VisitorInfoCard/VisitorInfoCard.js","import React from \"react\";\r\nimport moment from \"moment\";\r\n\r\nexport const SelectedMinorInfoCard = props => (\r\n \r\n
\r\n visitor name \r\n \r\n {props.firstName} {props.middleName} {props.lastName}\r\n \r\n \r\n
\r\n \r\n
Date of Birth: \r\n {moment(props.dob).format(\"MM/DD/YYYY\")} \r\n \r\n \r\n
Last 4 of SSN: \r\n {props.ssn} \r\n \r\n \r\n
Place of Birth: \r\n {props.pob} \r\n \r\n \r\n
Race: \r\n {props.race} \r\n \r\n \r\n
Sex: \r\n {props.sex} \r\n \r\n \r\n
\r\n);\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/SelectedMinorInfoCard/SelectedMinorInfoCard.js","import React from 'react';\r\nimport { MinorInfoCard } from '../MinorInfoCard';\r\nimport { OffenderReviewCard } from '../OffenderReviewCard';\r\nimport { PrimaryButton } from '../BasicForm';\r\nimport { relationships } from '../../utils/relationshipList';\r\n\r\nexport const SelectedMinorReview = ({offenders, minorFields, handleEditClick, minorId}) => (\r\n\t\r\n\t\t
\r\n\t\t
\r\n\t\t\t
Inmate(s) for Minor to Visit \r\n\t\t\t
\r\n\t\t\t
Below are the inmates you have selected for the minor to visit.
\r\n\t\t
\r\n\t\t
\r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/SelectedMinorReview/SelectedMinorReview.js","import React from 'react';\r\n\r\nexport const MinorInfoCard = (props) => (\r\n\t\r\n\t\t
Your responses to the Minor Visitor Questionnaire are listed below.
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t{props.victimOfOffender.value.toLowerCase() == \"no\" ? (\r\n\t\t\t\t\tThe minor is not a victim of the crime of the inmate they wish to visit.
\r\n\t\t\t\t) : (\r\n\t\t\t\t\tThe minor is a victim of the crime of the inmate they wish to visit.
\r\n\t\t\t\t)}\r\n\t\t\t \r\n\t\t\t\r\n\t\t\t\t{props.felonyConviction.value.toLowerCase() == \"no\" ? (\r\n\t\t\t\t\t\tThe minor has never been convicted of a felony.
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\tThe minor has been convicted of a felony.
\r\n\t\t\t\t\t)\t\t\r\n\t\t\t\t}\r\n\t\t\t \r\n\t\t\t\r\n\t\t\t\t{props.courtSupervision.value.toLowerCase() == \"no\" ? (\r\n\t\t\t\t\t\tThe minor is not currently under active court supervision.
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\tThe minor is currently under active court supervision.
\r\n\t\t\t\t\t)\t\r\n\t\t\t\t}\r\n\t\t\t \r\n\t\t\t\r\n\t\t\t\t{props.gangAssociation.value.toLowerCase() == \"no\" ? (\r\n\t\t\t\t\t\tThe minor has never been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1.
\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\tThe minor has been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1.
\r\n\t\t\t\t\t)\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t \r\n\t\t \r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/MinorInfoCard/MinorInfoCard.js","import React from 'react';\r\n\r\nexport const OffenderReviewCard = (props) => (\r\n\t\r\n \r\n name \r\n {props.FullName} // \r\n age \r\n {props.Age}, \r\n race \r\n {props.Race}, \r\n sex \r\n {props.Gender} \r\n \r\n \r\n \r\n
Alias: \r\n {props.Alias} \r\n \r\n \r\n
Inmate ID #: \r\n {props.OffenderId} \r\n \r\n \r\n
Location: \r\n {props.LocationName} \r\n \r\n \r\n
Release Date: \r\n {props.ProjectedReleaseDate} \r\n \r\n \r\n
Relationship to Visitor: \r\n {props.RelationshipToVisitor} \r\n \r\n \r\n \r\n)\n\n\n// WEBPACK FOOTER //\n// ./src/components/OffenderReviewCard/OffenderReviewCard.js","export const formatFields = (fields) => {\r\n\treturn formatVisitorQuestFields(fields);\r\n}\r\n\r\nfunction formatVisitorQuestFields({\r\n\tVADOCEmployee,\r\n\tactiveParole,\r\n\tfelonyConviction,\r\n\tprotectiveOrder,\r\n\tgangAssociation\r\n}) {\r\n\tlet VADOCEmployeeFormat,\r\n\tactiveParoleFormat,\r\n\tfelonyConvictionFormat,\r\n\tprotectiveOrderFormat,\r\n\tgangAssociationFormat;\r\n\r\n\tVADOCEmployee.value === \"no\" ? \r\n\t\tVADOCEmployeeFormat = \"You are not currently or formerly a VADOC employee, contractor, or volunteer.\" :\r\n\t\tVADOCEmployeeFormat = \"You are currently or formerly a VADOC employee, contractor, or volunteer.\";\r\n\r\n\tactiveParole.value === \"no\" ?\r\n\t\tactiveParoleFormat = \"You are not currently under active parole or probation supervision.\" :\r\n\t\tactiveParoleFormat = \"You are currently under active parole or probation supervision.\";\r\n\r\n\tfelonyConviction.value === \"no\" ?\r\n\t\tfelonyConvictionFormat = \"You have never been convicted of a felony.\" :\r\n\t\tfelonyConvictionFormat = \"You have been convicted of a felony.\";\r\n\r\n\tprotectiveOrder.value === \"no\" ?\r\n\t\tprotectiveOrderFormat = \"You are not banned from having contact with the inmate under an existing protective order, no-contact order, or Child Protective Services/Adult Protective Services ruling.\" :\r\n\t\tprotectiveOrderFormat = \"You are banned from having contact with the inmate under an existing protective order, no-contact order, or Child Protective Services/Adult Protective Services ruling.\"; \r\n\r\n\tgangAssociation.value === \"no\" ?\r\n\t\tgangAssociationFormat = \"You have never been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1.\" :\r\n\t\tgangAssociationFormat = \"You have been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1.\";\r\n\r\n\treturn {\r\n\t\tVADOCEmployee: VADOCEmployeeFormat,\r\n\t\tactiveParole: activeParoleFormat,\r\n\t\tfelonyConviction: felonyConvictionFormat,\r\n\t\tprotectiveOrder: protectiveOrderFormat,\r\n\t\tgangAssociation: gangAssociationFormat\r\n\t}\r\n\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/formatFields.js","import React, { Component } from \"react\";\r\nimport { SecondaryFormNav } from \"../../components/SecondaryFormNav\";\r\nclass ApplicationDeclined extends Component {\r\n state = {\r\n heading: null,\r\n showProgressBar: false,\r\n pageId: \"application-declined\"\r\n };\r\n componentWillMount = () => {\r\n const stepData = this.props.stepData;\r\n\r\n if (!(this.props.declined || this.props.minorDeclined)) {\r\n this.props.history.push(\"/\");\r\n } else {\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n };\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n handlePrevious = () => {\r\n const stepData = this.props.stepData;\r\n this.props.previousStep(stepData);\r\n };\r\n handlePrimaryClick = () => {\r\n const stepData = this.props.stepData;\r\n this.props.nextStep(stepData);\r\n };\r\n handleSecondaryClick = () => {\r\n const stepData = this.props.stepData;\r\n stepData.altBack = true;\r\n this.props.previousStep(stepData);\r\n };\r\n backToForm = () => {\r\n this.props.history.goBack();\r\n };\r\n handleSubmit = fields => {\r\n const isErr = this.props.validateStep(fields);\r\n const stepData = this.props.stepData;\r\n\r\n if (!isErr) {\r\n this.props.nextStep(stepData);\r\n }\r\n };\r\n render() {\r\n const declined = this.props.declined;\r\n return (\r\n \r\n
\r\n \r\n Application Declined\r\n \r\n {declined ? (\r\n
\r\n
\r\n We are unable to move forward with your visitation application\r\n based your answers in the Visitor Questionnaire. Please refer to\r\n Operating Procedure 851.1 for more details on our visitation\r\n policies.\r\n
\r\n
\r\n Return to Visitation\r\n \r\n
\r\n ) : (\r\n
\r\n
\r\n We’re unable to move forward with your request to add this minor\r\n to your visitation application based your answers in the Minor\r\n Visitor Questionnaire. Please refer to Operating Procedure 851.1\r\n for more details on our visitation policies.\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default ApplicationDeclined;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicationDeclined/ApplicationDeclined.js","import React, { Component } from \"react\";\r\n\r\nclass ApplicationSubmitted extends Component {\r\n state = {\r\n heading: null,\r\n showProgressBar: false,\r\n pageId: \"application-submitted\"\r\n };\r\n componentWillMount() {\r\n const stepData = this.props.stepData;\r\n if (!stepData.access) {\r\n this.props.previousStep(stepData);\r\n }\r\n this.props.setHeaderDisplay(\r\n this.state.heading,\r\n stepData.displayStep,\r\n this.state.showProgressBar,\r\n this.state.pageId,\r\n stepData.step\r\n );\r\n }\r\n componentDidMount() {\r\n document.getElementById(\"root\").scrollIntoView();\r\n window.scrollBy(0, -10);\r\n }\r\n render() {\r\n let submissionSuccess = false;\r\n if (\r\n this.props.submissionStatus == 200 &&\r\n this.props.submissionStatusText == \"OK\"\r\n ) {\r\n submissionSuccess = true;\r\n }\r\n return (\r\n \r\n {submissionSuccess ? (\r\n
\r\n
\r\n \r\n Application Submitted\r\n \r\n
\r\n We have received your visitation application! Processing your\r\n application takes about 45 days for Virginia residents and 90 days\r\n for out-of-state residents. Please note that longer processing\r\n time may be required for applicants that:\r\n
\r\n
\r\n \r\n are current or former VADOC employees, contractors, or\r\n volunteers\r\n \r\n are currently on probation or parole \r\n have felonies on their record \r\n \r\n
\r\n Our staff at the Virginia Department of Corrections will send\r\n status updates to the email you provided in this application.\r\n Please add VisitationApplications@vadoc.virginia.gov to your\r\n contacts to make sure you receive messages from us.\r\n
\r\n
\r\n If your application is approved, your next step will be to schedule\r\n a visit using our online scheduling system. Please refer to the Visitation page for more information. Thank you!\r\n
\r\n
\r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n Application Failed to Submit\r\n \r\n
\r\n Unfortunately, it looks like something went wrong on our end. We\r\n are working to address the issue and apologize for the\r\n inconvenience. Please try re-submitting your application later.\r\n
\r\n
\r\n If you have any questions, please contact{\" \"}\r\n \r\n VisitationInquiries@vadoc.virginia.gov\r\n \r\n . Thank you!\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\nexport default ApplicationSubmitted;\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/pages/ApplicationSubmitted/ApplicationSubmitted.js","import React from 'react';\r\nimport { ProgressBadge } from '../ProgressBadge';\r\n\r\nexport const ProgressBar = ({width, badge}) => (\r\n\t\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/ProgressBar/ProgressBar.js","import React from 'react';\r\n\r\nexport const ProgressBadge = (props) => (\r\n\t\r\n\t\t
\r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/ProgressBadge/ProgressBadge.js","import React from 'react';\r\n\r\nexport const StepCount = ({step}) => (\r\n\t\r\n\t\tStep {step}/10\r\n\t
\r\n);\n\n\n// WEBPACK FOOTER //\n// ./src/components/StepCount/StepCount.js","import { fieldValidations } from \"./fieldValidations\";\r\n\r\nexport default {\r\n firstName: {\r\n value: \"\",\r\n label: \"Legal First Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true,\r\n maxLength: \"50\"\r\n },\r\n middleName: {\r\n value: \"\",\r\n label: \"Legal Middle Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true,\r\n maxLength: \"50\"\r\n },\r\n lastName: {\r\n value: \"\",\r\n label: \"Legal Last Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true,\r\n maxLength: \"50\"\r\n },\r\n maidenName: {\r\n value: \"\",\r\n label: \"Legal Maiden Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n maxLength: \"50\"\r\n },\r\n otherName: {\r\n value: \"\",\r\n label: \"Other Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n maxLength: \"50\"\r\n },\r\n applicantPhone: {\r\n value: \"\",\r\n label: \"Phone Number\",\r\n validation: fieldValidations.isCompletePhone,\r\n maxLength: 12,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n VADOCEmployee: {\r\n value: \"\",\r\n legend:\r\n \"Are you a current or former VADOC employee, contractor, or volunteer?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n activeParole: {\r\n value: \"\",\r\n legend: \"Are you currently under active parole or probation supervision?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n VADOCId: {\r\n value: \"\",\r\n label: \"VADOC Identification Number\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n isRequired: false\r\n },\r\n ppDistrict: {\r\n value: \"\",\r\n label: \"Probation & Parole District\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n isRequired: false\r\n },\r\n felonyConviction: {\r\n value: \"\",\r\n legend: \"Have you ever been convicted of a felony as a juvenile or adult?\",\r\n tipTitle: \"\",\r\n info:\r\n \"Select yes even if your civil rights have been restored by the Governor (you have regained the right to vote, own a firearm, serve on a jury, run for office, and become a notary public).\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: false,\r\n isRequired: true\r\n },\r\n protectiveOrder: {\r\n value: \"\",\r\n legend:\r\n \"Are you banned from having contact with an inmate under an existing protective order, no-contact order, or Child Protective Services/Adult Protective Services ruling?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: true,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n gangAssociation: {\r\n value: \"\",\r\n legend:\r\n \"Are you currently or have you previously been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1?\",\r\n tipTitle: \"Code of Virginia §18.2-46.1\",\r\n info:\r\n \"“Criminal street gang” means any ongoing organizaton, associaton, or group of three or more persons, whether formal or informal, i) which has one of its primary objectives or activities the commission of one or more criminal activities; ii) which has an identifiable name or identifying sign or symbol; and iii) whose members individually or collectively have engaged in the commission of, attempt to commit, conspiracy to commit, or solicitation of two or more predictable criminal acts, at least one of which is an act of violence, provided such acts were not part of a common act or transaction.\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: true,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n eligibleRehire: {\r\n value: \"\",\r\n legend:\r\n \"Are you eligible for re-hiring? If a volunteer, are you allowed to return?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n meetOffender: {\r\n value: \"\",\r\n legend:\r\n \"Did you meet any of the inmates while you were an employee, contractor, or volunteer at the VADOC?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n employmentStatus: {\r\n value: \"\",\r\n legend: \"VADOC Employment Status \",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n options: [\r\n {\r\n label: \"Current Employee/Volunteer\",\r\n value: \"Current Employee/Volunteer\"\r\n },\r\n { label: \"Former Employee/Volunteer\", value: \"Former Employee/Volunteer\" }\r\n ],\r\n isRequired: true\r\n },\r\n employmentStartDate: {\r\n value: \"\",\r\n label: \"Start Date\",\r\n className: \"\",\r\n validation: fieldValidations.isValidDate,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n employmentEndDate: {\r\n value: \"\",\r\n label: \"End Date\",\r\n className: \"\",\r\n validation: fieldValidations.isValidDate,\r\n errMessage: \"\",\r\n isRequired: false\r\n },\r\n employmentTitle: {\r\n value: \"\",\r\n label: \"Position/Title\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n employmentAlias: {\r\n value: \"\",\r\n label: \"Name Used if Different from Current\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n employmentLocation: {\r\n value: \"\",\r\n label: \"Workplace Location\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n offenderSearchFirstName: {\r\n value: \"\",\r\n label: \"First Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n offenderSearchLastName: {\r\n value: \"\",\r\n label: \"Last Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n offenderSearchId: {\r\n value: \"\",\r\n label: \"Inmate ID #\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n offenderSearchMiddleName: {\r\n value: \"\",\r\n label: \"Middle Name\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n offenderSearchAlias: {\r\n value: \"\",\r\n label: \"Alias\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n offenderSearchReleaseDate: {\r\n value: \"\",\r\n label: \"Release Date\",\r\n validation: fieldValidations.isValidDate,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n offenderSearchAgeFrom: {\r\n value: 18,\r\n label: \"From\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n offenderSearchAgeTo: {\r\n value: 99,\r\n label: \"To\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n className: \"\"\r\n },\r\n offenderSearchRace: {\r\n value: \"\",\r\n label: \"Race\",\r\n validation: fieldValidations.isAlpha,\r\n errMessage: \"\",\r\n options: [\r\n { label: \"American Indian or Alaskan Native\", value: \"15\" },\r\n { label: \"Asian or Pacific Islander\", value: \"16\" },\r\n { label: \"Black\", value: \"17\" },\r\n { label: \"Unknown\", value: \"19\" },\r\n { label: \"White\", value: \"18\" }\r\n ],\r\n className: \"\"\r\n },\r\n offenderSearchSex: {\r\n value: \"\",\r\n label: \"Sex\",\r\n validation: fieldValidations.isAlpha,\r\n errMessage: \"\",\r\n options: [{ label: \"Female\", value: \"13\" }, { label: \"Male\", value: \"12\" }],\r\n className: \"\"\r\n },\r\n selectedOffenders: {},\r\n applicantDOB: {\r\n value: \"\",\r\n label: \"Date of Birth\",\r\n validation: fieldValidations.legalAge,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantPlaceOfBirth: {\r\n value: \"\",\r\n label: \"Place of Birth\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n placeholder: \"City/County, State, and Country\",\r\n className: \"\",\r\n isRequired: true,\r\n maxLength: \"100\"\r\n },\r\n applicantIdType: {\r\n value: \"\",\r\n legend: \"ID Type \",\r\n options: [\r\n { label: \"Driver's License\", value: \"1\" },\r\n { label: \"Military ID\", value: \"12\" },\r\n { label: \"Passport\", value: \"11\" },\r\n { label: \"State-Issued ID\", value: \"13\" }\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantIdNumber: {\r\n value: \"\",\r\n label: \"ID Number\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n maxLength: \"30\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantSsn: {\r\n value: \"\",\r\n label: \"Last 4 digits of SSN\",\r\n tipTitle: \"\",\r\n info:\r\n \"Enter “1111” if you do not have a valid SSN (for example, internatonal applicants). Providing a false SSN will automatcally disqualify your applicaton.\",\r\n validation: fieldValidations.isLastFourSsn,\r\n errMessage: \"\",\r\n className: \"\",\r\n maxLength: 4,\r\n isRequired: true\r\n },\r\n applicantRace: {\r\n value: \"\",\r\n legend: \"Race \",\r\n options: [\r\n { label: \"American Indian or Alaskan Native\", value: \"15\" },\r\n { label: \"Asian or Pacific Islander\", value: \"16\" },\r\n { label: \"Black\", value: \"17\" },\r\n { label: \"Unknown\", value: \"19\" },\r\n { label: \"White\", value: \"18\" }\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantSex: {\r\n value: \"\",\r\n legend: \"Sex \",\r\n options: [{ label: \"Female\", value: \"13\" }, { label: \"Male\", value: \"12\" }],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantVisitationType: {\r\n value: \"\",\r\n label: \"\",\r\n options: [\r\n { label: \"In-Person\", secondLine:\"Visitation\", value: \"in-person visitation only\" },\r\n { label: \"AFOI Center\", secondLine:\"Video Visitation\", value: \"AFOI Center video visitation only\" },\r\n { label: \"Both\", secondLine:\"(In-Person & Video Visitation)\", value: \"both in-person and AFOI video visitation\" },\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantHair: {\r\n value: \"\",\r\n legend: \"Hair Color \",\r\n options: [\r\n { label: \"Bald\", value: \"1\" },\r\n { label: \"Black\", value: \"2\" },\r\n { label: \"Blonde/Strawberry\", value: \"3\" },\r\n { label: \"Blue\", value: \"4\" },\r\n { label: \"Brown\", value: \"5\" },\r\n { label: \"Gray/Partially Gray\", value: \"6\" },\r\n { label: \"Green\", value: \"7\" },\r\n { label: \"Orange\", value: \"8\" },\r\n { label: \"Pink\", value: \"9\" },\r\n { label: \"Purple\", value: \"10\" },\r\n { label: \"Red\", value: \"11\" },\r\n { label: \"Sandy\", value: \"12\" },\r\n { label: \"White\", value: \"13\" }\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantEyes: {\r\n value: \"\",\r\n legend: \"Eye Color \",\r\n options: [\r\n { label: \"Blue\", value: \"6\" },\r\n { label: \"Brown\", value: \"2\" },\r\n { label: \"Gray\", value: \"7\" },\r\n { label: \"Green\", value: \"3\" },\r\n { label: \"Hazel\", value: \"8\" },\r\n { label: \"Maroon\", value: \"4\" },\r\n { label: \"Multicolored\", value: \"9\" },\r\n { label: \"Pink\", value: \"5\" }\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantHeightFt: {\r\n value: \"\",\r\n label: \"Feet\",\r\n validation: fieldValidations.isValidFeet,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true,\r\n maxVal: \"10\"\r\n },\r\n applicantHeightIn: {\r\n value: \"\",\r\n label: \"Inches\",\r\n maxVal: \"11\",\r\n validation: fieldValidations.isValidInches,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantWeight: {\r\n value: \"\",\r\n label: \"lbs\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantCountry: {\r\n value: \"United States\",\r\n countryName: \"\",\r\n label: \"Country\",\r\n validation: fieldValidations.isNumeric,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantStreet: {\r\n value: \"\",\r\n label: \"Current Street Address\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n className: \"\",\r\n maxLength: \"50\",\r\n isRequired: true\r\n },\r\n applicantZip: {\r\n value: \"\",\r\n label: \"Zip Code\",\r\n validation: fieldValidations.isValidZipcode,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantCity: {\r\n value: \"\",\r\n label: \"City\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantState: {\r\n value: \"\",\r\n label: \"State\",\r\n numCode: \"\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantEmail: {\r\n value: \"\",\r\n label: \"Email Address\",\r\n maxLength: \"254\",\r\n validation: fieldValidations.isValidEmail,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n applicantPhoneType: {\r\n value: \"\",\r\n legend: \"Phone Type\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n options: [\r\n { label: \"Home\", value: \"53\" },\r\n { label: \"Cell\", value: \"51\" },\r\n { label: \"Work\", value: \"50\" }\r\n ],\r\n isRequired: true\r\n },\r\n minorCertification: {\r\n value: false,\r\n label:\r\n \"I certify the above information is true for the minor being added to this application. \",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n },\r\n selectedMinors: {},\r\n finalAuthorization: {\r\n value: false,\r\n label:\r\n \"I authorize the Virginia Department of Corrections to conduct a criminal records check or to use any Department of Corrections records to verify accuracy of information provided on this form.\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n isRequired: true\r\n }\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/formFields.js","import { fieldValidations } from \"./fieldValidations\";\r\n\r\nexport default {\r\n victimOfOffender: {\r\n value: \"\",\r\n legend: \"Is the minor a victim of the inmate they wish to visit?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: true,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n felonyConviction: {\r\n value: \"\",\r\n legend: \"Has the minor ever been convicted of a felony?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: false,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n courtSupervision: {\r\n value: \"\",\r\n legend: \"Is the minor currently under active court supervision?\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: true,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n gangAssociation: {\r\n value: \"\",\r\n legend:\r\n \"Is the minor currently or has the minor previously been a member of a gang, racial supremacy group, or another similar organization as defined in the Code of Virginia §18.2-46.1?\",\r\n tipTitle: \"Code of Virginia §18.2-46.1\",\r\n info:\r\n \"“Criminal street gang” means any ongoing organizaton, associaton, or group of three or more persons, whether formal or informal, i) which has one of its primary objectives or activities the commission of one or more criminal activities; ii) which has an identifiable name or identifying sign or symbol; and iii) whose members individually or collectively have engaged in the commission of, attempt to commit, conspiracy to commit, or solicitation of two or more predictable criminal acts, at least one of which is an act of violence, provided such acts were not part of a common act or transaction.\",\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n fatal: true,\r\n fatalVal: \"yes\",\r\n isRequired: true\r\n },\r\n DOB: {\r\n value: \"\",\r\n label: \"Date of Birth\",\r\n validation: fieldValidations.isMinor,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n firstName: {\r\n value: \"\",\r\n label: \"Minor's Legal First Name\",\r\n maxLength: \"50\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n middleName: {\r\n value: \"\",\r\n label: \"Minor's Legal Middle Name\",\r\n maxLength: \"50\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n lastName: {\r\n value: \"\",\r\n label: \"Minor's Legal Last Name\",\r\n maxLength: \"50\",\r\n validation: fieldValidations.nameValidate,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n ssn: {\r\n value: \"\",\r\n label: \"Last 4 of Minor's SSN\",\r\n validation: fieldValidations.isLastFourSsn,\r\n errMessage: \"\",\r\n className: \"\",\r\n maxLength: 4,\r\n isRequired: true\r\n },\r\n placeOfBirth: {\r\n value: \"\",\r\n label: \"Place of Birth\",\r\n maxLength: \"100\",\r\n validation: fieldValidations.hasForbiddenChars,\r\n errMessage: \"\",\r\n placeholder: \"City/County, State, and Country\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n race: {\r\n value: \"\",\r\n legend: \"Race \",\r\n options: [\r\n { label: \"American Indian or Alaskan Native\", value: \"15\" },\r\n { label: \"Asian or Pacific Islander\", value: \"16\" },\r\n { label: \"Black\", value: \"17\" },\r\n { label: \"Unknown\", value: \"19\" },\r\n { label: \"White\", value: \"18\" }\r\n ],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n sex: {\r\n value: \"\",\r\n legend: \"Sex \",\r\n options: [{ label: \"Female\", value: \"13\" }, { label: \"Male\", value: \"12\" }],\r\n validation: fieldValidations.validateRadio,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true\r\n },\r\n parentLegalGuardian: {\r\n value: true,\r\n errMessage: \"\",\r\n className: \"\",\r\n isRequired: true,\r\n validation: fieldValidations.isTrue\r\n }\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/minorFormFields.js","export const stepTracker = {\r\n\t0: {\r\n\t\tstep: 0,\r\n\t\turl: '/',\r\n\t\taccess: true,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 1,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: null,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t1: {\r\n\t\tstep: 1,\r\n\t\turl: '/visitor-questionnaire',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 1,\r\n\t\tnextStep: 2,\r\n\t\taltNextStep: 3,\r\n\t\tprevStep: 0,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t2: {\r\n\t\tstep: 2,\r\n\t\turl: '/work-history',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 2,\r\n\t\tnextStep: 3,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 1,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t3: {\r\n\t\tstep: 3,\r\n\t\turl: '/who-to-visit',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 3,\r\n\t\tnextStep: 4,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 2,\r\n\t\taltPrevStep: 1,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t4: {\r\n\t\tstep: 4,\r\n\t\turl: '/visitor-offender-relationship',\r\n\t\taccess: false,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 5,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 3,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t5: {\r\n\t\tstep: 5,\r\n\t\turl: '/selected-offenders',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 4,\r\n\t\tnextStep: 6,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 3,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t6: {\r\n\t\tstep: 6,\r\n\t\turl: '/applicant-information',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 5,\r\n\t\tnextStep: 7,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 5,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t7: {\r\n\t\tstep: 7,\r\n\t\turl: '/applicant-physical',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 6,\r\n\t\tnextStep: 8,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 6,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t8: {\r\n\t\tstep: 8,\r\n\t\turl: '/applicant-contact',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 7,\r\n\t\tnextStep: 9,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 7,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\t\r\n\t},\r\n\t9: {\r\n\t\tstep: 9,\r\n\t\turl: '/add-minor',\r\n\t\taccess: false,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 10,\r\n\t\taltNextStep: 14,\r\n\t\tprevStep: 8,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t10: {\r\n\t\tstep: 10,\r\n\t\turl: '/minor-questionnaire',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 8,\r\n\t\tnextStep: 11,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 9,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t11: {\r\n\t\tstep: 11,\r\n\t\turl: '/minor-information',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 9,\r\n\t\tnextStep: 12,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 10,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t12: {\r\n\t\tstep: 12,\r\n\t\turl: '/minor-visit-selection',\r\n\t\taccess: false,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 13,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 11,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t13: {\r\n\t\tstep: 13,\r\n\t\turl: '/review-minor',\r\n\t\taccess: false,\r\n\t\tdisplayStep: 10,\r\n\t\tnextStep: 14,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 9,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t14: {\r\n\t\tstep: 14,\r\n\t\turl: '/application-review',\r\n\t\taccess: false,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 15,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 13,\r\n\t\taltPrevStep: 9,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t15: {\r\n\t\tstep: 15,\r\n\t\turl: '/application-submitted',\r\n\t\taccess: false,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: null,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 14,\r\n\t\taltPrevStep: null,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n\t16: {\r\n\t\tstep: 16,\r\n\t\turl: '/application-declined',\r\n\t\taccess: true,\r\n\t\tdisplayStep: null,\r\n\t\tnextStep: 14,\r\n\t\taltNextStep: null,\r\n\t\tprevStep: 0,\r\n\t\taltPrevStep: 9,\r\n\t\taltForward: false,\r\n\t\taltBack: false\r\n\t},\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/stepTracker.js","export const facilities = {\r\n\t\"Augusta Correctional Center\": \"1927\",\r\n \"Baskerville Correctional Center\": \"1879\",\r\n \"Bland Correctional Center\": \"1912\",\r\n \"Brunswick Work Center\": \"2150\",\r\n \"Buckingham Correctional Center\": \"1928\",\r\n \"Caroline Correctional Unit\": \"1877\",\r\n \"Central Virginia Correctional Unit\": \"1888\",\r\n \"Coffeewood Correctional Center\": \"1929\",\r\n \"Cold Springs Correctional Unit\": \"1885\",\r\n \"Deep Meadow Correctional Center\": \"1922\",\r\n \"Deerfield Correctional Center\": \"1948\",\r\n \"Deerfield Mens Work Center\": \"2153\",\r\n \"Deerfield Women's Work Center\": \"2503\",\r\n \"Detainer Unit\": \"6136\",\r\n \"Dillwyn Correctional Center\": \"1941\",\r\n \"Fluvanna Correctional Center\": \"1951\",\r\n \"Green Rock Correctional Center\": \"2587\",\r\n \"Greensville Correctional Center\": \"1932\",\r\n \"Greensville Work Center\": \"1908\",\r\n \"Halifax Correctional Unit\": \"1897\",\r\n \"Haynesville Correctional Center\": \"1942\",\r\n \"Haynesville Correctional Unit 17\": \"1892\",\r\n \"Indian Creek Correctional Center\": \"1943\",\r\n \"Interstate Compact-Facility\": \"6129\",\r\n \"James River Work Center\": \"1909\",\r\n \"Keen Mountain Correctional Center\": \"1940\",\r\n \"Lawrenceville Correctional Center\": \"1950\",\r\n \"Lunenburg Correctional Center\": \"1931\",\r\n \"Marion Correctional Treatment Center\": \"1961\",\r\n \"Mecklenburg Correctional Center\": \"1923\",\r\n \"Nottoway Correctional Center\": \"1930\",\r\n \"Nottoway Work Center\": \"1910\",\r\n \"Patrick Henry Correctional Unit\": \"1902\",\r\n \"Pocahontas State Correctional Center\": \"2586\",\r\n \"Powhatan County Jail\": \"2100\",\r\n \"Powhatan Reception And Classification Ctr\": \"2181\",\r\n \"Red Onion State Prison\": \"1945\",\r\n \"River North Correctional Center\": \"6264\",\r\n \"Rustburg Correctional Unit\": \"1884\",\r\n \"St. Brides Correctional Center\": \"1947\",\r\n \"Sussex I State Prison\": \"1938\",\r\n \"Sussex II State Prison\": \"1939\",\r\n \"Virginia Correctional Center For Women\": \"1916\",\r\n \"Wallens Ridge State Prison\": \"1946\",\r\n \"Wise Correctional Unit\": \"1893\"\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/facilitiesList.js"],"sourceRoot":""}