{"version":3,"sources":["webpack:///bundle.global-scripts.js","webpack:///webpack/bootstrap 7fce4b75e3a540c4f172","webpack:///./node_modules/component-emitter/index.js","webpack:///./node_modules/superagent/lib/request-base.js","webpack:///./node_modules/superagent/lib/response-base.js","webpack:///./node_modules/superagent/lib/utils.js","webpack:///./node_modules/superagent/lib/agent-base.js","webpack:///external \"jQuery\"","webpack:///./node_modules/superagent/lib/is-object.js","webpack:///./theme_components/js/global-scripts.js","webpack:///external \"Modernizr\"","webpack:///./theme_components/js/modules/_skip-link-focus-fix.js","webpack:///./theme_components/js/modules/_menus.js","webpack:///./node_modules/superfish/dist/js/superfish.js","webpack:///./node_modules/jquery-match-height/dist/jquery.matchHeight.js","webpack:///./node_modules/jump.js/dist/jump.module.js","webpack:///./theme_components/js/modules/_utilities.js","webpack:///./node_modules/superagent/lib/client.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","10","Emitter","obj","mixin","key","on","addEventListener","event","fn","this","_callbacks","push","once","off","apply","arguments","removeListener","removeAllListeners","removeEventListener","length","callbacks","cb","splice","emit","args","Array","slice","len","listeners","hasListeners","11","RequestBase","isObject","clearTimeout","_timer","_responseTimeoutTimer","parse","_parser","responseType","val","_responseType","serialize","_serializer","timeout","options","_timeout","_responseTimeout","option","deadline","response","console","warn","retry","count","_maxRetries","_retries","_retryCallback","ERROR_CODES","_shouldRetry","err","res","override","e","error","status","code","indexOf","crossDomain","_retry","req","request","_aborted","timedout","_end","then","resolve","reject","_fullfilledPromise","self","_endCalled","Promise","innerResolve","innerReject","end","undefined","use","ok","Error","_okCallback","_isResponseOK","field","_header","toLowerCase","getHeader","set","header","unset","_data","isArray","_getFormData","append","abort","xhr","_auth","user","pass","base64Encoder","type","username","password","withCredentials","_withCredentials","redirects","_maxRedirects","maxResponseSize","TypeError","_maxResponseSize","toJSON","method","url","data","headers","send","isObj","_formData","_isHost","sortQuery","sort","_sort","_finalizeQueryString","query","_query","join","index","queryArr","substring","split","_appendQueryString","trace","_timeoutError","reason","errno","callback","_setTimeouts","setTimeout","12","ResponseBase","utils","_setHeaderProperties","ct","params","links","link","parseLinks","_setStatusProperties","statusCode","statusType","info","redirect","clientError","serverError","toError","created","accepted","noContent","badRequest","unauthorized","notAcceptable","forbidden","notFound","unprocessableEntity","13","str","shift","reduce","parts","cleanHeader","changesOrigin","14","Agent","_defaults","forEach","_setDefaults","def","4","jQuery","6","61","_interopRequireDefault","default","processDocument","item","contentType","success","filename","Name","blob","Blob","Data","navigator","msSaveBlob","saveBlob","webkitSaveBlob","mozSaveBlob","ex","urlCreator","window","URL","webkitURL","mozURL","msURL","document","createElement","createObjectURL","setAttribute","createEvent","initMouseEvent","dispatchEvent","location","alert","filterQuerystring","match","p1","offset","href","reg","RegExp","string","exec","_jquery2","_jquery","_modernizr2","_modernizr","_jump2","_jump","_superagent2","_superagent","matchHeight","Modernizr","svg","attr","replace","each","parent","hasClass","wrap","preventDefault","slideToggle","focus","scroll_distance","back_to_top","scroll","scrollTop","addClass","removeClass","src","includes","Request","post","RequestVerificationToken","body","gtag","label","linkUrl","newWindow","open","ready","context","JSON","that","alertData","alertParams","ruleValue","rule","value","baseUrl","Id","selectedPartyId","search","empty","html","show","62","63","is_webkit","userAgent","is_opera","is_ie","getElementById","element","id","hash","test","tagName","tabIndex","64","superfish","delay","speed","speedOut","pathname","jumplinks","main_menu","clone","mobile_menu_modal","prepend","find","siblings","before","toggleClass","65","$","w","methods","bcClass","menuClass","anchorClass","menuArrowClass","ios","css","noop","wp7","style","documentElement","unprefixedPointerEvents","PointerEvent","toggleMenuClasses","$menu","add","classes","cssArrows","setPathToCurrent","pathClass","pathLevels","hoverClass","filter","children","popUpSelector","hide","toggleAnchorClass","$li","toggleTouchAction","msTouchAction","touchAction","getMenu","$el","closest","getOptions","over","$this","sfTimer","close","retainPath","inArray","$path","parents","onIdle","proxy","out","touchHandler","$ul","onHandleTouch","is","one","trigger","applyHandlers","targets","hoverIntent","disableHI","touchevent","instant","not","onBeforeHide","stop","animate","animationOut","onHide","onBeforeShow","animation","onShow","destroy","$hasPopUp","onDestroy","removeData","init","op","extend","defaults","onInit","opacity","66","factory","_previousResizeWidth","_updateTimeout","_parse","parseFloat","_rows","elements","$elements","lastTop","rows","$that","top","lastRow","Math","floor","abs","_parseOptions","opts","byRow","target","remove","_groups","group","_apply","version","_throttle","_maintainScroll","_beforeUpdate","_afterUpdate","htmlHeight","outerHeight","$hiddenParents","display","row","$row","targetHeight","verticalPadding","_applyDataApi","groups","groupId","_update","throttle","windowWidth","width","7","__webpack_exports__","easeInOutQuad","t","b","_typeof","Symbol","iterator","constructor","singleton","scrollY","pageYOffset","getBoundingClientRect","start","loop","timeCurrent","timeStart","timeElapsed","next","easing","distance","duration","scrollTo","requestAnimationFrame","done","a11y","jump","querySelector","8","linkify","text","element_id","scroolToElement","parseItems","items","itemArray","parseItem","stringify","json_arr","Properties","$values","node","Value","$value","9","pairs","pushEncodedKeyValuePair","v","subkey","encodeURIComponent","parseString","pair","pos","decodeURIComponent","parseHeader","line","lines","fields","trim","isJSON","mime","Response","responseText","statusText","getAllResponseHeaders","getResponseHeader","_parseBody","original","rawResponse","new_err","custom_err","del","root","getXHR","XMLHttpRequest","protocol","ActiveXObject","serializeObject","types","json","xml","urlencoded","msg","accept","auth","btoa","encoder","attach","file","FormData","_callback","retries","crossDomainError","buffer","ca","agent","pipe","write","toString","onreadystatechange","readyState","handleProgress","direction","total","percent","loaded","onprogress","bind","upload","setRequestHeader","head","patch","put"],"mappings":"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","file":"bundle.global-scripts.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 61);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 10:\n/***/ (function(module, exports, __webpack_require__) {\n\n\r\n/**\r\n * Expose `Emitter`.\r\n */\r\n\r\nif (true) {\r\n module.exports = Emitter;\r\n}\r\n\r\n/**\r\n * Initialize a new `Emitter`.\r\n *\r\n * @api public\r\n */\r\n\r\nfunction Emitter(obj) {\r\n if (obj) return mixin(obj);\r\n};\r\n\r\n/**\r\n * Mixin the emitter properties.\r\n *\r\n * @param {Object} obj\r\n * @return {Object}\r\n * @api private\r\n */\r\n\r\nfunction mixin(obj) {\r\n for (var key in Emitter.prototype) {\r\n obj[key] = Emitter.prototype[key];\r\n }\r\n return obj;\r\n}\r\n\r\n/**\r\n * Listen on the given `event` with `fn`.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.on =\r\nEmitter.prototype.addEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\r\n .push(fn);\r\n return this;\r\n};\r\n\r\n/**\r\n * Adds an `event` listener that will be invoked a single\r\n * time then automatically removed.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.once = function(event, fn){\r\n function on() {\r\n this.off(event, on);\r\n fn.apply(this, arguments);\r\n }\r\n\r\n on.fn = fn;\r\n this.on(event, on);\r\n return this;\r\n};\r\n\r\n/**\r\n * Remove the given callback for `event` or all\r\n * registered callbacks.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.off =\r\nEmitter.prototype.removeListener =\r\nEmitter.prototype.removeAllListeners =\r\nEmitter.prototype.removeEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n\r\n // all\r\n if (0 == arguments.length) {\r\n this._callbacks = {};\r\n return this;\r\n }\r\n\r\n // specific event\r\n var callbacks = this._callbacks['$' + event];\r\n if (!callbacks) return this;\r\n\r\n // remove all handlers\r\n if (1 == arguments.length) {\r\n delete this._callbacks['$' + event];\r\n return this;\r\n }\r\n\r\n // remove specific handler\r\n var cb;\r\n for (var i = 0; i < callbacks.length; i++) {\r\n cb = callbacks[i];\r\n if (cb === fn || cb.fn === fn) {\r\n callbacks.splice(i, 1);\r\n break;\r\n }\r\n }\r\n\r\n // Remove event specific arrays for event types that no\r\n // one is subscribed for to avoid memory leak.\r\n if (callbacks.length === 0) {\r\n delete this._callbacks['$' + event];\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Emit `event` with the given args.\r\n *\r\n * @param {String} event\r\n * @param {Mixed} ...\r\n * @return {Emitter}\r\n */\r\n\r\nEmitter.prototype.emit = function(event){\r\n this._callbacks = this._callbacks || {};\r\n\r\n var args = new Array(arguments.length - 1)\r\n , callbacks = this._callbacks['$' + event];\r\n\r\n for (var i = 1; i < arguments.length; i++) {\r\n args[i - 1] = arguments[i];\r\n }\r\n\r\n if (callbacks) {\r\n callbacks = callbacks.slice(0);\r\n for (var i = 0, len = callbacks.length; i < len; ++i) {\r\n callbacks[i].apply(this, args);\r\n }\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Return array of callbacks for `event`.\r\n *\r\n * @param {String} event\r\n * @return {Array}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.listeners = function(event){\r\n this._callbacks = this._callbacks || {};\r\n return this._callbacks['$' + event] || [];\r\n};\r\n\r\n/**\r\n * Check if this emitter has `event` handlers.\r\n *\r\n * @param {String} event\r\n * @return {Boolean}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.hasListeners = function(event){\r\n return !! this.listeners(event).length;\r\n};\r\n\n\n/***/ }),\n\n/***/ 11:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Module of mixed-in functions shared between node and client code\n */\nvar isObject = __webpack_require__(6);\n\n/**\n * Expose `RequestBase`.\n */\n\nmodule.exports = RequestBase;\n\n/**\n * Initialize a new `RequestBase`.\n *\n * @api public\n */\n\nfunction RequestBase(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the prototype properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in RequestBase.prototype) {\n obj[key] = RequestBase.prototype[key];\n }\n return obj;\n}\n\n/**\n * Clear previous timeout.\n *\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.clearTimeout = function _clearTimeout(){\n clearTimeout(this._timer);\n clearTimeout(this._responseTimeoutTimer);\n delete this._timer;\n delete this._responseTimeoutTimer;\n return this;\n};\n\n/**\n * Override default response body parser\n *\n * This function will be called to convert incoming data into request.body\n *\n * @param {Function}\n * @api public\n */\n\nRequestBase.prototype.parse = function parse(fn){\n this._parser = fn;\n return this;\n};\n\n/**\n * Set format of binary response body.\n * In browser valid formats are 'blob' and 'arraybuffer',\n * which return Blob and ArrayBuffer, respectively.\n *\n * In Node all values result in Buffer.\n *\n * Examples:\n *\n * req.get('/')\n * .responseType('blob')\n * .end(callback);\n *\n * @param {String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.responseType = function(val){\n this._responseType = val;\n return this;\n};\n\n/**\n * Override default request body serializer\n *\n * This function will be called to convert data set via .send or .attach into payload to send\n *\n * @param {Function}\n * @api public\n */\n\nRequestBase.prototype.serialize = function serialize(fn){\n this._serializer = fn;\n return this;\n};\n\n/**\n * Set timeouts.\n *\n * - response timeout is time between sending request and receiving the first byte of the response. Includes DNS and connection time.\n * - deadline is the time from start of the request to receiving response body in full. If the deadline is too short large files may not load at all on slow connections.\n *\n * Value of 0 or false means no timeout.\n *\n * @param {Number|Object} ms or {response, deadline}\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.timeout = function timeout(options){\n if (!options || 'object' !== typeof options) {\n this._timeout = options;\n this._responseTimeout = 0;\n return this;\n }\n\n for(var option in options) {\n switch(option) {\n case 'deadline':\n this._timeout = options.deadline;\n break;\n case 'response':\n this._responseTimeout = options.response;\n break;\n default:\n console.warn(\"Unknown timeout option\", option);\n }\n }\n return this;\n};\n\n/**\n * Set number of retry attempts on error.\n *\n * Failed requests will be retried 'count' times if timeout or err.code >= 500.\n *\n * @param {Number} count\n * @param {Function} [fn]\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.retry = function retry(count, fn){\n // Default to 1 if no count passed or true\n if (arguments.length === 0 || count === true) count = 1;\n if (count <= 0) count = 0;\n this._maxRetries = count;\n this._retries = 0;\n this._retryCallback = fn;\n return this;\n};\n\nvar ERROR_CODES = [\n 'ECONNRESET',\n 'ETIMEDOUT',\n 'EADDRINFO',\n 'ESOCKETTIMEDOUT'\n];\n\n/**\n * Determine if a request should be retried.\n * (Borrowed from segmentio/superagent-retry)\n *\n * @param {Error} err\n * @param {Response} [res]\n * @returns {Boolean}\n */\nRequestBase.prototype._shouldRetry = function(err, res) {\n if (!this._maxRetries || this._retries++ >= this._maxRetries) {\n return false;\n }\n if (this._retryCallback) {\n try {\n var override = this._retryCallback(err, res);\n if (override === true) return true;\n if (override === false) return false;\n // undefined falls back to defaults\n } catch(e) {\n console.error(e);\n }\n }\n if (res && res.status && res.status >= 500 && res.status != 501) return true;\n if (err) {\n if (err.code && ~ERROR_CODES.indexOf(err.code)) return true;\n // Superagent timeout\n if (err.timeout && err.code == 'ECONNABORTED') return true;\n if (err.crossDomain) return true;\n }\n return false;\n};\n\n/**\n * Retry request\n *\n * @return {Request} for chaining\n * @api private\n */\n\nRequestBase.prototype._retry = function() {\n\n this.clearTimeout();\n\n // node\n if (this.req) {\n this.req = null;\n this.req = this.request();\n }\n\n this._aborted = false;\n this.timedout = false;\n\n return this._end();\n};\n\n/**\n * Promise support\n *\n * @param {Function} resolve\n * @param {Function} [reject]\n * @return {Request}\n */\n\nRequestBase.prototype.then = function then(resolve, reject) {\n if (!this._fullfilledPromise) {\n var self = this;\n if (this._endCalled) {\n console.warn(\"Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises\");\n }\n this._fullfilledPromise = new Promise(function(innerResolve, innerReject) {\n self.end(function(err, res) {\n if (err) innerReject(err);\n else innerResolve(res);\n });\n });\n }\n return this._fullfilledPromise.then(resolve, reject);\n};\n\nRequestBase.prototype['catch'] = function(cb) {\n return this.then(undefined, cb);\n};\n\n/**\n * Allow for extension\n */\n\nRequestBase.prototype.use = function use(fn) {\n fn(this);\n return this;\n};\n\nRequestBase.prototype.ok = function(cb) {\n if ('function' !== typeof cb) throw Error(\"Callback required\");\n this._okCallback = cb;\n return this;\n};\n\nRequestBase.prototype._isResponseOK = function(res) {\n if (!res) {\n return false;\n }\n\n if (this._okCallback) {\n return this._okCallback(res);\n }\n\n return res.status >= 200 && res.status < 300;\n};\n\n/**\n * Get request header `field`.\n * Case-insensitive.\n *\n * @param {String} field\n * @return {String}\n * @api public\n */\n\nRequestBase.prototype.get = function(field){\n return this._header[field.toLowerCase()];\n};\n\n/**\n * Get case-insensitive header `field` value.\n * This is a deprecated internal API. Use `.get(field)` instead.\n *\n * (getHeader is no longer used internally by the superagent code base)\n *\n * @param {String} field\n * @return {String}\n * @api private\n * @deprecated\n */\n\nRequestBase.prototype.getHeader = RequestBase.prototype.get;\n\n/**\n * Set header `field` to `val`, or multiple fields with one object.\n * Case-insensitive.\n *\n * Examples:\n *\n * req.get('/')\n * .set('Accept', 'application/json')\n * .set('X-API-Key', 'foobar')\n * .end(callback);\n *\n * req.get('/')\n * .set({ Accept: 'application/json', 'X-API-Key': 'foobar' })\n * .end(callback);\n *\n * @param {String|Object} field\n * @param {String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.set = function(field, val){\n if (isObject(field)) {\n for (var key in field) {\n this.set(key, field[key]);\n }\n return this;\n }\n this._header[field.toLowerCase()] = val;\n this.header[field] = val;\n return this;\n};\n\n/**\n * Remove header `field`.\n * Case-insensitive.\n *\n * Example:\n *\n * req.get('/')\n * .unset('User-Agent')\n * .end(callback);\n *\n * @param {String} field\n */\nRequestBase.prototype.unset = function(field){\n delete this._header[field.toLowerCase()];\n delete this.header[field];\n return this;\n};\n\n/**\n * Write the field `name` and `val`, or multiple fields with one object\n * for \"multipart/form-data\" request bodies.\n *\n * ``` js\n * request.post('/upload')\n * .field('foo', 'bar')\n * .end(callback);\n *\n * request.post('/upload')\n * .field({ foo: 'bar', baz: 'qux' })\n * .end(callback);\n * ```\n *\n * @param {String|Object} name\n * @param {String|Blob|File|Buffer|fs.ReadStream} val\n * @return {Request} for chaining\n * @api public\n */\nRequestBase.prototype.field = function(name, val) {\n // name should be either a string or an object.\n if (null === name || undefined === name) {\n throw new Error('.field(name, val) name can not be empty');\n }\n\n if (this._data) {\n console.error(\".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()\");\n }\n\n if (isObject(name)) {\n for (var key in name) {\n this.field(key, name[key]);\n }\n return this;\n }\n\n if (Array.isArray(val)) {\n for (var i in val) {\n this.field(name, val[i]);\n }\n return this;\n }\n\n // val should be defined now\n if (null === val || undefined === val) {\n throw new Error('.field(name, val) val can not be empty');\n }\n if ('boolean' === typeof val) {\n val = '' + val;\n }\n this._getFormData().append(name, val);\n return this;\n};\n\n/**\n * Abort the request, and clear potential timeout.\n *\n * @return {Request}\n * @api public\n */\nRequestBase.prototype.abort = function(){\n if (this._aborted) {\n return this;\n }\n this._aborted = true;\n this.xhr && this.xhr.abort(); // browser\n this.req && this.req.abort(); // node\n this.clearTimeout();\n this.emit('abort');\n return this;\n};\n\nRequestBase.prototype._auth = function(user, pass, options, base64Encoder) {\n switch (options.type) {\n case 'basic':\n this.set('Authorization', 'Basic ' + base64Encoder(user + ':' + pass));\n break;\n\n case 'auto':\n this.username = user;\n this.password = pass;\n break;\n\n case 'bearer': // usage would be .auth(accessToken, { type: 'bearer' })\n this.set('Authorization', 'Bearer ' + user);\n break;\n }\n return this;\n};\n\n/**\n * Enable transmission of cookies with x-domain requests.\n *\n * Note that for this to work the origin must not be\n * using \"Access-Control-Allow-Origin\" with a wildcard,\n * and also must set \"Access-Control-Allow-Credentials\"\n * to \"true\".\n *\n * @api public\n */\n\nRequestBase.prototype.withCredentials = function(on) {\n // This is browser-only functionality. Node side is no-op.\n if (on == undefined) on = true;\n this._withCredentials = on;\n return this;\n};\n\n/**\n * Set the max redirects to `n`. Does noting in browser XHR implementation.\n *\n * @param {Number} n\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.redirects = function(n){\n this._maxRedirects = n;\n return this;\n};\n\n/**\n * Maximum size of buffered response body, in bytes. Counts uncompressed size.\n * Default 200MB.\n *\n * @param {Number} n\n * @return {Request} for chaining\n */\nRequestBase.prototype.maxResponseSize = function(n){\n if ('number' !== typeof n) {\n throw TypeError(\"Invalid argument\");\n }\n this._maxResponseSize = n;\n return this;\n};\n\n/**\n * Convert to a plain javascript object (not JSON string) of scalar properties.\n * Note as this method is designed to return a useful non-this value,\n * it cannot be chained.\n *\n * @return {Object} describing method, url, and data of this request\n * @api public\n */\n\nRequestBase.prototype.toJSON = function() {\n return {\n method: this.method,\n url: this.url,\n data: this._data,\n headers: this._header,\n };\n};\n\n/**\n * Send `data` as the request body, defaulting the `.type()` to \"json\" when\n * an object is given.\n *\n * Examples:\n *\n * // manual json\n * request.post('/user')\n * .type('json')\n * .send('{\"name\":\"tj\"}')\n * .end(callback)\n *\n * // auto json\n * request.post('/user')\n * .send({ name: 'tj' })\n * .end(callback)\n *\n * // manual x-www-form-urlencoded\n * request.post('/user')\n * .type('form')\n * .send('name=tj')\n * .end(callback)\n *\n * // auto x-www-form-urlencoded\n * request.post('/user')\n * .type('form')\n * .send({ name: 'tj' })\n * .end(callback)\n *\n * // defaults to x-www-form-urlencoded\n * request.post('/user')\n * .send('name=tobi')\n * .send('species=ferret')\n * .end(callback)\n *\n * @param {String|Object} data\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.send = function(data){\n var isObj = isObject(data);\n var type = this._header['content-type'];\n\n if (this._formData) {\n console.error(\".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()\");\n }\n\n if (isObj && !this._data) {\n if (Array.isArray(data)) {\n this._data = [];\n } else if (!this._isHost(data)) {\n this._data = {};\n }\n } else if (data && this._data && this._isHost(this._data)) {\n throw Error(\"Can't merge these send calls\");\n }\n\n // merge\n if (isObj && isObject(this._data)) {\n for (var key in data) {\n this._data[key] = data[key];\n }\n } else if ('string' == typeof data) {\n // default to x-www-form-urlencoded\n if (!type) this.type('form');\n type = this._header['content-type'];\n if ('application/x-www-form-urlencoded' == type) {\n this._data = this._data\n ? this._data + '&' + data\n : data;\n } else {\n this._data = (this._data || '') + data;\n }\n } else {\n this._data = data;\n }\n\n if (!isObj || this._isHost(data)) {\n return this;\n }\n\n // default to json\n if (!type) this.type('json');\n return this;\n};\n\n/**\n * Sort `querystring` by the sort function\n *\n *\n * Examples:\n *\n * // default order\n * request.get('/user')\n * .query('name=Nick')\n * .query('search=Manny')\n * .sortQuery()\n * .end(callback)\n *\n * // customized sort function\n * request.get('/user')\n * .query('name=Nick')\n * .query('search=Manny')\n * .sortQuery(function(a, b){\n * return a.length - b.length;\n * })\n * .end(callback)\n *\n *\n * @param {Function} sort\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.sortQuery = function(sort) {\n // _sort default to true but otherwise can be a function or boolean\n this._sort = typeof sort === 'undefined' ? true : sort;\n return this;\n};\n\n/**\n * Compose querystring to append to req.url\n *\n * @api private\n */\nRequestBase.prototype._finalizeQueryString = function(){\n var query = this._query.join('&');\n if (query) {\n this.url += (this.url.indexOf('?') >= 0 ? '&' : '?') + query;\n }\n this._query.length = 0; // Makes the call idempotent\n\n if (this._sort) {\n var index = this.url.indexOf('?');\n if (index >= 0) {\n var queryArr = this.url.substring(index + 1).split('&');\n if ('function' === typeof this._sort) {\n queryArr.sort(this._sort);\n } else {\n queryArr.sort();\n }\n this.url = this.url.substring(0, index) + '?' + queryArr.join('&');\n }\n }\n};\n\n// For backwards compat only\nRequestBase.prototype._appendQueryString = function() {console.trace(\"Unsupported\");}\n\n/**\n * Invoke callback with timeout error.\n *\n * @api private\n */\n\nRequestBase.prototype._timeoutError = function(reason, timeout, errno){\n if (this._aborted) {\n return;\n }\n var err = new Error(reason + timeout + 'ms exceeded');\n err.timeout = timeout;\n err.code = 'ECONNABORTED';\n err.errno = errno;\n this.timedout = true;\n this.abort();\n this.callback(err);\n};\n\nRequestBase.prototype._setTimeouts = function() {\n var self = this;\n\n // deadline\n if (this._timeout && !this._timer) {\n this._timer = setTimeout(function(){\n self._timeoutError('Timeout of ', self._timeout, 'ETIME');\n }, this._timeout);\n }\n // response timeout\n if (this._responseTimeout && !this._responseTimeoutTimer) {\n this._responseTimeoutTimer = setTimeout(function(){\n self._timeoutError('Response timeout of ', self._responseTimeout, 'ETIMEDOUT');\n }, this._responseTimeout);\n }\n};\n\n\n/***/ }),\n\n/***/ 12:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Module dependencies.\n */\n\nvar utils = __webpack_require__(13);\n\n/**\n * Expose `ResponseBase`.\n */\n\nmodule.exports = ResponseBase;\n\n/**\n * Initialize a new `ResponseBase`.\n *\n * @api public\n */\n\nfunction ResponseBase(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the prototype properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in ResponseBase.prototype) {\n obj[key] = ResponseBase.prototype[key];\n }\n return obj;\n}\n\n/**\n * Get case-insensitive `field` value.\n *\n * @param {String} field\n * @return {String}\n * @api public\n */\n\nResponseBase.prototype.get = function(field) {\n return this.header[field.toLowerCase()];\n};\n\n/**\n * Set header related properties:\n *\n * - `.type` the content type without params\n *\n * A response of \"Content-Type: text/plain; charset=utf-8\"\n * will provide you with a `.type` of \"text/plain\".\n *\n * @param {Object} header\n * @api private\n */\n\nResponseBase.prototype._setHeaderProperties = function(header){\n // TODO: moar!\n // TODO: make this a util\n\n // content-type\n var ct = header['content-type'] || '';\n this.type = utils.type(ct);\n\n // params\n var params = utils.params(ct);\n for (var key in params) this[key] = params[key];\n\n this.links = {};\n\n // links\n try {\n if (header.link) {\n this.links = utils.parseLinks(header.link);\n }\n } catch (err) {\n // ignore\n }\n};\n\n/**\n * Set flags such as `.ok` based on `status`.\n *\n * For example a 2xx response will give you a `.ok` of __true__\n * whereas 5xx will be __false__ and `.error` will be __true__. The\n * `.clientError` and `.serverError` are also available to be more\n * specific, and `.statusType` is the class of error ranging from 1..5\n * sometimes useful for mapping respond colors etc.\n *\n * \"sugar\" properties are also defined for common cases. Currently providing:\n *\n * - .noContent\n * - .badRequest\n * - .unauthorized\n * - .notAcceptable\n * - .notFound\n *\n * @param {Number} status\n * @api private\n */\n\nResponseBase.prototype._setStatusProperties = function(status){\n var type = status / 100 | 0;\n\n // status / class\n this.status = this.statusCode = status;\n this.statusType = type;\n\n // basics\n this.info = 1 == type;\n this.ok = 2 == type;\n this.redirect = 3 == type;\n this.clientError = 4 == type;\n this.serverError = 5 == type;\n this.error = (4 == type || 5 == type)\n ? this.toError()\n : false;\n\n // sugar\n this.created = 201 == status;\n this.accepted = 202 == status;\n this.noContent = 204 == status;\n this.badRequest = 400 == status;\n this.unauthorized = 401 == status;\n this.notAcceptable = 406 == status;\n this.forbidden = 403 == status;\n this.notFound = 404 == status;\n this.unprocessableEntity = 422 == status;\n};\n\n\n/***/ }),\n\n/***/ 13:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Return the mime type for the given `str`.\n *\n * @param {String} str\n * @return {String}\n * @api private\n */\n\nexports.type = function(str){\n return str.split(/ *; */).shift();\n};\n\n/**\n * Return header field parameters.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nexports.params = function(str){\n return str.split(/ *; */).reduce(function(obj, str){\n var parts = str.split(/ *= */);\n var key = parts.shift();\n var val = parts.shift();\n\n if (key && val) obj[key] = val;\n return obj;\n }, {});\n};\n\n/**\n * Parse Link header fields.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nexports.parseLinks = function(str){\n return str.split(/ *, */).reduce(function(obj, str){\n var parts = str.split(/ *; */);\n var url = parts[0].slice(1, -1);\n var rel = parts[1].split(/ *= */)[1].slice(1, -1);\n obj[rel] = url;\n return obj;\n }, {});\n};\n\n/**\n * Strip content related fields from `header`.\n *\n * @param {Object} header\n * @return {Object} header\n * @api private\n */\n\nexports.cleanHeader = function(header, changesOrigin){\n delete header['content-type'];\n delete header['content-length'];\n delete header['transfer-encoding'];\n delete header['host'];\n // secuirty\n if (changesOrigin) {\n delete header['authorization'];\n delete header['cookie'];\n }\n return header;\n};\n\n\n/***/ }),\n\n/***/ 14:\n/***/ (function(module, exports) {\n\nfunction Agent() {\n this._defaults = [];\n}\n\n[\"use\", \"on\", \"once\", \"set\", \"query\", \"type\", \"accept\", \"auth\", \"withCredentials\", \"sortQuery\", \"retry\", \"ok\", \"redirects\",\n \"timeout\", \"buffer\", \"serialize\", \"parse\", \"ca\", \"key\", \"pfx\", \"cert\"].forEach(function(fn) {\n /** Default setting for all requests from this agent */\n Agent.prototype[fn] = function(/*varargs*/) {\n this._defaults.push({fn:fn, arguments:arguments});\n return this;\n }\n});\n\nAgent.prototype._setDefaults = function(req) {\n this._defaults.forEach(function(def) {\n req[def.fn].apply(req, def.arguments);\n });\n};\n\nmodule.exports = Agent;\n\n\n/***/ }),\n\n/***/ 4:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 6:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * Check if `obj` is an object.\n *\n * @param {Object} obj\n * @return {Boolean}\n * @api private\n */\n\nfunction isObject(obj) {\n return null !== obj && 'object' === typeof obj;\n}\n\nmodule.exports = isObject;\n\n\n/***/ }),\n\n/***/ 61:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _jquery = __webpack_require__(4);\n\nvar _jquery2 = _interopRequireDefault(_jquery);\n\nvar _modernizr = __webpack_require__(62);\n\nvar _modernizr2 = _interopRequireDefault(_modernizr);\n\nvar _jump = __webpack_require__(7);\n\nvar _jump2 = _interopRequireDefault(_jump);\n\n__webpack_require__(63);\n\n__webpack_require__(64);\n\n__webpack_require__(66);\n\nvar _superagent = __webpack_require__(9);\n\nvar _superagent2 = _interopRequireDefault(_superagent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * Notes:\n *\n * Although jQuery is imported above, it is not bundulded\n * with the transpiled assets. jQuery needs to be global\n * on the website.\n *\n * All imports belong at the top of the file.\n *\n * Webpack only outputs this one script file, if you need\n * another file then add it to the scripts-list.js file as\n * another line in the scripts_list object.\n *\n * The scripts_list const is imported into the webpack\n * config. I've done this so that you do not have to\n * wade through the consfig to find what is being\n * compiled out as its own file.\n */\n\nvar alertUrl = 'api/NotificationSet/_execute';\n\n/*************** Match Height ***************/\n(0, _jquery2.default)('.match-height').matchHeight();\n\n/*************** SVG image replacement ***************/\nif (!_modernizr2.default.svg) {\n\t(0, _jquery2.default)('img[src*=\"svg\"]').attr('src', function () {\n\t\treturn (0, _jquery2.default)(this).attr('src').replace('.svg', '.png');\n\t});\n}\n\n/*************** Flex Video ***************/\n(0, _jquery2.default)('iframe[src*=\"player.vimeo.com\"],[src*=\"www.youtube.com\"],object[id=\"flashObj\"]').each(function () {\n\tif (!(0, _jquery2.default)(this).parent().hasClass('flex-video')) {\n\t\t(0, _jquery2.default)(this).wrap('
');\n\t}\n});\n\n/*************** Search region ***************/\n(0, _jquery2.default)('.search-button a').on('click', function (event) {\n\tevent.preventDefault();\n\n\t(0, _jquery2.default)('.search-region').slideToggle(function () {\n\t\t(0, _jquery2.default)('.search-field').focus();\n\t});\n});\n\n/*************** Scroll to top ***************/\nvar scroll_distance = void 0;\nvar back_to_top = (0, _jquery2.default)('#scroll_top');\n\n(0, _jquery2.default)(document).scroll(function () {\n\tscroll_distance = (0, _jquery2.default)(window).scrollTop();\n\n\tif (scroll_distance >= 205) {\n\t\tback_to_top.addClass('show');\n\t} else {\n\t\tback_to_top.removeClass('show');\n\t}\n});\n\nback_to_top.on('click', function (event) {\n\tevent.preventDefault();\n\n\t(0, _jump2.default)('#contentstart');\n});\n\n(0, _jquery2.default)('body').on('click', '.download-link', function () {\n\tvar src = (0, _jquery2.default)(this).data('src');\n\tif (src !== null && src !== '') {\n\t\tif (src.includes('/')) {\n\t\t\t_superagent2.default.post('/api/Document/_execute').use(function (req) {\n\t\t\t\treq.header.contentType = 'application/json';\n\t\t\t\treq.header.RequestVerificationToken = (0, _jquery2.default)('#__RequestVerificationToken').val();\n\t\t\t\treturn req;\n\t\t\t}).send({\n\t\t\t\t'$type': 'Asi.Soa.Core.DataContracts.GenericExecuteRequest, Asi.Contracts',\n\t\t\t\t'EntityTypeName': 'Document',\n\t\t\t\t'OperationName': 'FindByPath',\n\t\t\t\t'Parameters': {\n\t\t\t\t\t'$type': 'System.Collections.ObjectModel.Collection`1[[System.Object, mscorlib]], mscorlib',\n\t\t\t\t\t'$values': [{\n\t\t\t\t\t\t'$type': 'System.String',\n\t\t\t\t\t\t'$value': src\n\t\t\t\t\t}]\n\t\t\t\t},\n\t\t\t\t'UseJson': false,\n\t\t\t\t'ParameterTypeNames': {\n\t\t\t\t\t'$type': 'System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib',\n\t\t\t\t\t'$values': ['System.String']\n\t\t\t\t}\n\t\t\t}).then(function (res) {\n\t\t\t\tif (res && res.body) {\n\t\t\t\t\tprocessDocument(res.body);\n\t\t\t\t} else {\n\t\t\t\t\talert('Error: Documnent can\\'t be found');\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n});\n\nfunction processDocument(item) {\n\tvar contentType = 'application/octet-stream';\n\tvar success = false;\n\tvar filename = item.Name;\n\n\ttry {\n\t\t// Try using msSaveBlob if supported\n\t\tvar blob = new Blob([item.Data], { type: contentType });\n\t\tif (navigator.msSaveBlob) navigator.msSaveBlob(blob, filename);else {\n\t\t\t// Try using other saveBlob implementations, if available\n\t\t\tvar saveBlob = navigator.webkitSaveBlob || navigator.mozSaveBlob || navigator.saveBlob;\n\t\t\tif (saveBlob === undefined) throw 'Not supported';\n\t\t\tsaveBlob(blob, filename);\n\t\t}\n\t\tsuccess = true;\n\t} catch (ex) {\n\t\t//eslint-disable-next-line no-console\n\t\tconsole.error('saveBlob method failed with the following exception:');\n\t\t//eslint-disable-next-line no-console\n\t\tconsole.error(ex);\n\t}\n\n\tif (!success) {\n\t\t// Get the blob url creator\n\t\tvar urlCreator = window.URL || window.webkitURL || window.mozURL || window.msURL;\n\t\tif (urlCreator) {\n\t\t\t// Try to use a download link\n\t\t\tvar link = document.createElement('a');\n\t\t\tif ('download' in link) {\n\t\t\t\t// Try to simulate a click\n\t\t\t\ttry {\n\t\t\t\t\t// Prepare a blob URL\n\t\t\t\t\tvar _blob = new Blob([item.Data], { type: contentType });\n\t\t\t\t\tvar url = urlCreator.createObjectURL(_blob);\n\t\t\t\t\tlink.setAttribute('href', url);\n\n\t\t\t\t\t// Set the download attribute (Supported in Chrome 14+ / Firefox 20+)\n\t\t\t\t\tlink.setAttribute('download', filename);\n\n\t\t\t\t\t// Simulate clicking the download link\n\t\t\t\t\tvar event = document.createEvent('MouseEvents');\n\t\t\t\t\tevent.initMouseEvent('click', true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);\n\t\t\t\t\tlink.dispatchEvent(event);\n\t\t\t\t\tsuccess = true;\n\t\t\t\t} catch (ex) {\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error('Download link method with simulated click failed with the following exception:');\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error(ex);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!success) {\n\t\t\t\t// Fallback to window.location method\n\t\t\t\ttry {\n\t\t\t\t\t// Prepare a blob URL\n\t\t\t\t\t// Use application/octet-stream when using window.location to force download\n\t\t\t\t\tvar _blob2 = new Blob([item.Data], { type: contentType });\n\t\t\t\t\tvar _url = urlCreator.createObjectURL(_blob2);\n\t\t\t\t\twindow.location = _url;\n\t\t\t\t\tsuccess = true;\n\t\t\t\t} catch (ex) {\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error('Download link method with window.location failed with the following exception:');\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error(ex);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!success) {\n\t\t// Fallback to window.open method\n\t\talert('Error downloading document!');\n\t}\n}\n\n/* eslint-disable */\n(0, _jquery2.default)('a[data-trigger]').on('click', function (e) {\n\tif (typeof gtag !== 'undefined') {\n\t\te.preventDefault();\n\t\tvar label = (0, _jquery2.default)(this).data('trigger');\n\t\tvar linkUrl = (0, _jquery2.default)(this).attr('href');\n\t\tvar newWindow = (0, _jquery2.default)(this).attr('target') && ((0, _jquery2.default)(this).attr('target') == 'blank' || (0, _jquery2.default)(this).attr('target') == '_blank') ? true : false;\n\t\tgtag('event', 'click', { 'event_category': label, 'event_label': linkUrl, 'transport_type': 'beacon', 'event_callback': function event_callback() {\n\t\t\t\tif (newWindow) {\n\t\t\t\t\twindow.open(linkUrl, '_blank');\n\t\t\t\t} else {\n\t\t\t\t\twindow.location = linkUrl;\n\t\t\t\t}\n\t\t\t} });\n\t}\n});\n/* eslint-enable */\n\n(0, _jquery2.default)(document).ready(function () {\n\tvar context = JSON.parse((0, _jquery2.default)('#__ClientContext').val());\n\t(0, _jquery2.default)('a').each(function () {\n\t\tvar link = (0, _jquery2.default)(this).attr('href');\n\t\tif (link && (link.indexOf('http') === 0 || link.indexOf('/') === 0)) {\n\t\t\tlink = link.replace(/\\[([^\\]]+)]/g, filterQuerystring);\n\t\t\t(0, _jquery2.default)(this).attr('href', link);\n\t\t}\n\t});\n\n\t(0, _jquery2.default)('div[data-alert]').each(function () {\n\t\tvar that = this;\n\t\tvar alertData = (0, _jquery2.default)(that).data('alert');\n\t\t//eslint-disable-next-line quotes\n\t\tvar alertParams = JSON.parse(alertData.replace(/\\\\'/g, '\"'));\n\t\tif (alertParams && alertParams.hasOwnProperty('rule')) {\n\t\t\tvar ruleValue = filterQuerystring('', alertParams.rule.key, '', '');\n\t\t\tif (ruleValue !== null && alertParams.rule.value.toLowerCase() === ruleValue.toLowerCase()) {\n\t\t\t\t_superagent2.default.post(context.baseUrl + alertUrl).use(function (req) {\n\t\t\t\t\treq.header.contentType = 'application/json';\n\t\t\t\t\treq.header.RequestVerificationToken = (0, _jquery2.default)('#__RequestVerificationToken').val();\n\t\t\t\t\treturn req;\n\t\t\t\t}).send({\n\t\t\t\t\t'$type': 'Asi.Soa.Communications.DataContracts.NotificationSetRequest, Asi.Contracts',\n\t\t\t\t\t'EntityTypeName': 'NotificationSet',\n\t\t\t\t\t'OperationName': 'NotificationSetRequest',\n\t\t\t\t\t'Operation': {\n\t\t\t\t\t\t'$type': 'Asi.Soa.Communications.DataContracts.NotificationSetOperationData, Asi.Contracts'\n\t\t\t\t\t},\n\t\t\t\t\t'NotificationSetId': alertParams.Id,\n\t\t\t\t\t'PartyId': context.selectedPartyId,\n\t\t\t\t\t'ParametersString': window.location.search\n\t\t\t\t}).then(function (res) {\n\t\t\t\t\tif (res && res.body) {\n\t\t\t\t\t\t(0, _jquery2.default)(that).empty().html(res.body).removeClass('hide').show();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t});\n});\n\nfunction filterQuerystring(match, p1, offset, s) {\n\tvar href = window.location.href;\n\tvar reg = new RegExp('[?&]' + p1 + '=([^&#]*)', 'i');\n\tvar string = reg.exec(href);\n\treturn string ? string[1] : null;\n}\n\n/***/ }),\n\n/***/ 62:\n/***/ (function(module, exports) {\n\nmodule.exports = Modernizr;\n\n/***/ }),\n\n/***/ 63:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/**\n * skip-link-focus-fix.js\n *\n * Helps with accessibility for keyboard only users.\n *\n * Learn more: https://git.io/vWdr2\n */\n(function () {\n\tvar is_webkit = navigator.userAgent.toLowerCase().indexOf('webkit') > -1;\n\tvar is_opera = navigator.userAgent.toLowerCase().indexOf('opera') > -1;\n\tvar is_ie = navigator.userAgent.toLowerCase().indexOf('msie') > -1;\n\n\tif ((is_webkit || is_opera || is_ie) && document.getElementById && window.addEventListener) {\n\t\twindow.addEventListener('hashchange', function () {\n\t\t\tvar id = location.hash.substring(1),\n\t\t\t element;\n\n\t\t\tif (!/^[A-z0-9_-]+$/.test(id)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement = document.getElementById(id);\n\n\t\t\tif (element) {\n\t\t\t\tif (!/^(?:a|select|input|button|textarea)$/i.test(element.tagName)) {\n\t\t\t\t\telement.tabIndex = -1;\n\t\t\t\t}\n\n\t\t\t\telement.focus();\n\t\t\t}\n\t\t}, false);\n\t}\n})();\n\n/***/ }),\n\n/***/ 64:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _jquery = __webpack_require__(4);\n\nvar _jquery2 = _interopRequireDefault(_jquery);\n\n__webpack_require__(65);\n\nvar _utilities = __webpack_require__(8);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * Inner page sidebar navigation script.\n */\n(0, _jquery2.default)(document).ready(function () {\n\t// Initialize Superfish menu\n\tjQuery('#main_menu menu').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0\n\t});\n\n\t// Add 'current' class to current page anchor\n\t(0, _jquery2.default)('#main_menu a').each(function (item, object) {\n\t\t(0, _jquery2.default)(object)[0].pathname === location.pathname && (0, _jquery2.default)(object)[0].hash === '' ? (0, _jquery2.default)(object).addClass('current') : '';\n\t});\n});\n\n(0, _utilities.jumplinks)('#main_menu');\n\n// Member Menu Unrestricted\n\n(0, _jquery2.default)(document).ready(function () {\n\t// Initialize Superfish menu\n\tjQuery('#user_menu ul').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0\n\t});\n\n\t// Add 'current' class to current page anchor\n\t(0, _jquery2.default)('#user_menu a').each(function (item, object) {\n\t\t(0, _jquery2.default)(object)[0].pathname === location.pathname && (0, _jquery2.default)(object)[0].hash === '' ? (0, _jquery2.default)(object).addClass('current') : '';\n\t});\n});\n\n(0, _utilities.jumplinks)('#user_menu');\n\n// Member Menu Claims Management\n\n(0, _jquery2.default)(document).ready(function () {\n\t// Initialize Superfish menu\n\tjQuery('#claims_menu ul').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0\n\t});\n\n\t// Add 'current' class to current page anchor\n\t(0, _jquery2.default)('#claims_menu a').each(function (item, object) {\n\t\t(0, _jquery2.default)(object)[0].pathname === location.pathname && (0, _jquery2.default)(object)[0].hash === '' ? (0, _jquery2.default)(object).addClass('current') : '';\n\t});\n});\n\n(0, _utilities.jumplinks)('#claims_menu');\n\n/*************** Submenu ***************/\n(0, _utilities.jumplinks)('#submenu');\n\n/*************** Mobile Menu ***************/\nvar main_menu = (0, _jquery2.default)('.main-menu menu').clone().html();\nvar mobile_menu_overlay = '
';\nvar mobile_menu_modal = '
' + mobile_menu_overlay;\n\n(0, _jquery2.default)('body').prepend(mobile_menu_modal);\n\nvar mobile_menu_generated = '#mobile_menu_generated';\n\n(0, _utilities.jumplinks)(mobile_menu_generated);\n\n(0, _jquery2.default)(mobile_menu_generated).find('a').siblings('ul').each(function (index, element) {\n\t(0, _jquery2.default)(element).before('SubMenu Toggle');\n});\n\n(0, _jquery2.default)(mobile_menu_generated).find('.toggle').on('click', function (event) {\n\tevent.preventDefault();\n\n\t(0, _jquery2.default)(this).siblings('ul').slideToggle();\n});\n\n(0, _jquery2.default)('#mobile_menu_toggle').on('click', function (event) {\n\tevent.preventDefault();\n\n\t(0, _jquery2.default)(this).toggleClass('is-active');\n\t(0, _jquery2.default)('#mobile_menu_overlay').toggleClass('off');\n\t(0, _jquery2.default)(mobile_menu_generated).toggleClass('off');\n});\n\n/***/ }),\n\n/***/ 65:\n/***/ (function(module, exports) {\n\n/*\n * jQuery Superfish Menu Plugin - v1.7.10\n * Copyright (c) 2018 Joel Birch\n *\n * Dual licensed under the MIT and GPL licenses:\n *\thttp://www.opensource.org/licenses/mit-license.php\n *\thttp://www.gnu.org/licenses/gpl.html\n */\n\n;(function ($, w) {\n\t\"use strict\";\n\n\tvar methods = (function () {\n\t\t// private properties and methods go here\n\t\tvar c = {\n\t\t\t\tbcClass: 'sf-breadcrumb',\n\t\t\t\tmenuClass: 'sf-js-enabled',\n\t\t\t\tanchorClass: 'sf-with-ul',\n\t\t\t\tmenuArrowClass: 'sf-arrows'\n\t\t\t},\n\t\t\tios = (function () {\n\t\t\t\tvar ios = /^(?![\\w\\W]*Windows Phone)[\\w\\W]*(iPhone|iPad|iPod)/i.test(navigator.userAgent);\n\t\t\t\tif (ios) {\n\t\t\t\t\t// tap anywhere on iOS to unfocus a submenu\n\t\t\t\t\t$('html').css('cursor', 'pointer').on('click', $.noop);\n\t\t\t\t}\n\t\t\t\treturn ios;\n\t\t\t})(),\n\t\t\twp7 = (function () {\n\t\t\t\tvar style = document.documentElement.style;\n\t\t\t\treturn ('behavior' in style && 'fill' in style && /iemobile/i.test(navigator.userAgent));\n\t\t\t})(),\n\t\t\tunprefixedPointerEvents = (function () {\n\t\t\t\treturn (!!w.PointerEvent);\n\t\t\t})(),\n\t\t\ttoggleMenuClasses = function ($menu, o, add) {\n\t\t\t\tvar classes = c.menuClass,\n\t\t\t\t\tmethod;\n\t\t\t\tif (o.cssArrows) {\n\t\t\t\t\tclasses += ' ' + c.menuArrowClass;\n\t\t\t\t}\n\t\t\t\tmethod = (add) ? 'addClass' : 'removeClass';\n\t\t\t\t$menu[method](classes);\n\t\t\t},\n\t\t\tsetPathToCurrent = function ($menu, o) {\n\t\t\t\treturn $menu.find('li.' + o.pathClass).slice(0, o.pathLevels)\n\t\t\t\t\t.addClass(o.hoverClass + ' ' + c.bcClass)\n\t\t\t\t\t\t.filter(function () {\n\t\t\t\t\t\t\treturn ($(this).children(o.popUpSelector).hide().show().length);\n\t\t\t\t\t\t}).removeClass(o.pathClass);\n\t\t\t},\n\t\t\ttoggleAnchorClass = function ($li, add) {\n\t\t\t\tvar method = (add) ? 'addClass' : 'removeClass';\n\t\t\t\t$li.children('a')[method](c.anchorClass);\n\t\t\t},\n\t\t\ttoggleTouchAction = function ($menu) {\n\t\t\t\tvar msTouchAction = $menu.css('ms-touch-action');\n\t\t\t\tvar touchAction = $menu.css('touch-action');\n\t\t\t\ttouchAction = touchAction || msTouchAction;\n\t\t\t\ttouchAction = (touchAction === 'pan-y') ? 'auto' : 'pan-y';\n\t\t\t\t$menu.css({\n\t\t\t\t\t'ms-touch-action': touchAction,\n\t\t\t\t\t'touch-action': touchAction\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetMenu = function ($el) {\n\t\t\t\treturn $el.closest('.' + c.menuClass);\n\t\t\t},\n\t\t\tgetOptions = function ($el) {\n\t\t\t\treturn getMenu($el).data('sfOptions');\n\t\t\t},\n\t\t\tover = function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this);\n\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t$this.siblings().superfish('hide').end().superfish('show');\n\t\t\t},\n\t\t\tclose = function (o) {\n\t\t\t\to.retainPath = ($.inArray(this[0], o.$path) > -1);\n\t\t\t\tthis.superfish('hide');\n\n\t\t\t\tif (!this.parents('.' + o.hoverClass).length) {\n\t\t\t\t\to.onIdle.call(getMenu(this));\n\t\t\t\t\tif (o.$path.length) {\n\t\t\t\t\t\t$.proxy(over, o.$path)();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tout = function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this);\n\t\t\t\tif (ios) {\n\t\t\t\t\t$.proxy(close, $this, o)();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t\to.sfTimer = setTimeout($.proxy(close, $this, o), o.delay);\n\t\t\t\t}\n\t\t\t},\n\t\t\ttouchHandler = function (e) {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this),\n\t\t\t\t\t$ul = $this.siblings(e.data.popUpSelector);\n\n\t\t\t\tif (o.onHandleTouch.call($ul) === false) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t\tif ($ul.length > 0 && $ul.is(':hidden')) {\n\t\t\t\t\t$this.one('click.superfish', false);\n\t\t\t\t\tif (e.type === 'MSPointerDown' || e.type === 'pointerdown') {\n\t\t\t\t\t\t$this.trigger('focus');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$.proxy(over, $this.parent('li'))();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tapplyHandlers = function ($menu, o) {\n\t\t\t\tvar targets = 'li:has(' + o.popUpSelector + ')';\n\t\t\t\tif ($.fn.hoverIntent && !o.disableHI) {\n\t\t\t\t\t$menu.hoverIntent(over, out, targets);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t$menu\n\t\t\t\t\t\t.on('mouseenter.superfish', targets, over)\n\t\t\t\t\t\t.on('mouseleave.superfish', targets, out);\n\t\t\t\t}\n\t\t\t\tvar touchevent = 'MSPointerDown.superfish';\n\t\t\t\tif (unprefixedPointerEvents) {\n\t\t\t\t\ttouchevent = 'pointerdown.superfish';\n\t\t\t\t}\n\t\t\t\tif (!ios) {\n\t\t\t\t\ttouchevent += ' touchend.superfish';\n\t\t\t\t}\n\t\t\t\tif (wp7) {\n\t\t\t\t\ttouchevent += ' mousedown.superfish';\n\t\t\t\t}\n\t\t\t\t$menu\n\t\t\t\t\t.on('focusin.superfish', 'li', over)\n\t\t\t\t\t.on('focusout.superfish', 'li', out)\n\t\t\t\t\t.on(touchevent, 'a', o, touchHandler);\n\t\t\t};\n\n\t\treturn {\n\t\t\t// public methods\n\t\t\thide: function (instant) {\n\t\t\t\tif (this.length) {\n\t\t\t\t\tvar $this = this,\n\t\t\t\t\t\to = getOptions($this);\n\t\t\t\t\tif (!o) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\t\t\t\t\tvar not = (o.retainPath === true) ? o.$path : '',\n\t\t\t\t\t\t$ul = $this.find('li.' + o.hoverClass).add(this).not(not).removeClass(o.hoverClass).children(o.popUpSelector),\n\t\t\t\t\t\tspeed = o.speedOut;\n\n\t\t\t\t\tif (instant) {\n\t\t\t\t\t\t$ul.show();\n\t\t\t\t\t\tspeed = 0;\n\t\t\t\t\t}\n\t\t\t\t\to.retainPath = false;\n\n\t\t\t\t\tif (o.onBeforeHide.call($ul) === false) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\n\t\t\t\t\t$ul.stop(true, true).animate(o.animationOut, speed, function () {\n\t\t\t\t\t\tvar $this = $(this);\n\t\t\t\t\t\to.onHide.call($this);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tshow: function () {\n\t\t\t\tvar o = getOptions(this);\n\t\t\t\tif (!o) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t\tvar $this = this.addClass(o.hoverClass),\n\t\t\t\t\t$ul = $this.children(o.popUpSelector);\n\n\t\t\t\tif (o.onBeforeShow.call($ul) === false) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t\t$ul.stop(true, true).animate(o.animation, o.speed, function () {\n\t\t\t\t\to.onShow.call($ul);\n\t\t\t\t});\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tdestroy: function () {\n\t\t\t\treturn this.each(function () {\n\t\t\t\t\tvar $this = $(this),\n\t\t\t\t\t\to = $this.data('sfOptions'),\n\t\t\t\t\t\t$hasPopUp;\n\t\t\t\t\tif (!o) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\t$hasPopUp = $this.find(o.popUpSelector).parent('li');\n\t\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t\ttoggleMenuClasses($this, o);\n\t\t\t\t\ttoggleAnchorClass($hasPopUp);\n\t\t\t\t\ttoggleTouchAction($this);\n\t\t\t\t\t// remove event handlers\n\t\t\t\t\t$this.off('.superfish').off('.hoverIntent');\n\t\t\t\t\t// clear animation's inline display style\n\t\t\t\t\t$hasPopUp.children(o.popUpSelector).attr('style', function (i, style) {\n\t\t\t\t\t\tif (typeof style !== 'undefined') {\n\t\t\t\t\t\t\treturn style.replace(/display[^;]+;?/g, '');\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\t// reset 'current' path classes\n\t\t\t\t\to.$path.removeClass(o.hoverClass + ' ' + c.bcClass).addClass(o.pathClass);\n\t\t\t\t\t$this.find('.' + o.hoverClass).removeClass(o.hoverClass);\n\t\t\t\t\to.onDestroy.call($this);\n\t\t\t\t\t$this.removeData('sfOptions');\n\t\t\t\t});\n\t\t\t},\n\t\t\tinit: function (op) {\n\t\t\t\treturn this.each(function () {\n\t\t\t\t\tvar $this = $(this);\n\t\t\t\t\tif ($this.data('sfOptions')) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tvar o = $.extend({}, $.fn.superfish.defaults, op),\n\t\t\t\t\t\t$hasPopUp = $this.find(o.popUpSelector).parent('li');\n\t\t\t\t\to.$path = setPathToCurrent($this, o);\n\n\t\t\t\t\t$this.data('sfOptions', o);\n\n\t\t\t\t\ttoggleMenuClasses($this, o, true);\n\t\t\t\t\ttoggleAnchorClass($hasPopUp, true);\n\t\t\t\t\ttoggleTouchAction($this);\n\t\t\t\t\tapplyHandlers($this, o);\n\n\t\t\t\t\t$hasPopUp.not('.' + c.bcClass).superfish('hide', true);\n\n\t\t\t\t\to.onInit.call(this);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t})();\n\n\t$.fn.superfish = function (method, args) {\n\t\tif (methods[method]) {\n\t\t\treturn methods[method].apply(this, Array.prototype.slice.call(arguments, 1));\n\t\t}\n\t\telse if (typeof method === 'object' || ! method) {\n\t\t\treturn methods.init.apply(this, arguments);\n\t\t}\n\t\telse {\n\t\t\treturn $.error('Method ' + method + ' does not exist on jQuery.fn.superfish');\n\t\t}\n\t};\n\n\t$.fn.superfish.defaults = {\n\t\tpopUpSelector: 'ul,.sf-mega', // within menu context\n\t\thoverClass: 'sfHover',\n\t\tpathClass: 'overrideThisToUse',\n\t\tpathLevels: 1,\n\t\tdelay: 800,\n\t\tanimation: {opacity: 'show'},\n\t\tanimationOut: {opacity: 'hide'},\n\t\tspeed: 'normal',\n\t\tspeedOut: 'fast',\n\t\tcssArrows: true,\n\t\tdisableHI: false,\n\t\tonInit: $.noop,\n\t\tonBeforeShow: $.noop,\n\t\tonShow: $.noop,\n\t\tonBeforeHide: $.noop,\n\t\tonHide: $.noop,\n\t\tonIdle: $.noop,\n\t\tonDestroy: $.noop,\n\t\tonHandleTouch: $.noop\n\t};\n\n})(jQuery, window);\n\n\n/***/ }),\n\n/***/ 66:\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n* jquery-match-height 0.7.2 by @liabru\n* http://brm.io/jquery-match-height/\n* License: MIT\n*/\n\n;(function(factory) { // eslint-disable-line no-extra-semi\n 'use strict';\n if (true) {\n // AMD\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(4)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if (typeof module !== 'undefined' && module.exports) {\n // CommonJS\n module.exports = factory(require('jquery'));\n } else {\n // Global\n factory(jQuery);\n }\n})(function($) {\n /*\n * internal\n */\n\n var _previousResizeWidth = -1,\n _updateTimeout = -1;\n\n /*\n * _parse\n * value parse utility function\n */\n\n var _parse = function(value) {\n // parse value and convert NaN to 0\n return parseFloat(value) || 0;\n };\n\n /*\n * _rows\n * utility function returns array of jQuery selections representing each row\n * (as displayed after float wrapping applied by browser)\n */\n\n var _rows = function(elements) {\n var tolerance = 1,\n $elements = $(elements),\n lastTop = null,\n rows = [];\n\n // group elements by their top position\n $elements.each(function(){\n var $that = $(this),\n top = $that.offset().top - _parse($that.css('margin-top')),\n lastRow = rows.length > 0 ? rows[rows.length - 1] : null;\n\n if (lastRow === null) {\n // first item on the row, so just push it\n rows.push($that);\n } else {\n // if the row top is the same, add to the row group\n if (Math.floor(Math.abs(lastTop - top)) <= tolerance) {\n rows[rows.length - 1] = lastRow.add($that);\n } else {\n // otherwise start a new row group\n rows.push($that);\n }\n }\n\n // keep track of the last row top\n lastTop = top;\n });\n\n return rows;\n };\n\n /*\n * _parseOptions\n * handle plugin options\n */\n\n var _parseOptions = function(options) {\n var opts = {\n byRow: true,\n property: 'height',\n target: null,\n remove: false\n };\n\n if (typeof options === 'object') {\n return $.extend(opts, options);\n }\n\n if (typeof options === 'boolean') {\n opts.byRow = options;\n } else if (options === 'remove') {\n opts.remove = true;\n }\n\n return opts;\n };\n\n /*\n * matchHeight\n * plugin definition\n */\n\n var matchHeight = $.fn.matchHeight = function(options) {\n var opts = _parseOptions(options);\n\n // handle remove\n if (opts.remove) {\n var that = this;\n\n // remove fixed height from all selected elements\n this.css(opts.property, '');\n\n // remove selected elements from all groups\n $.each(matchHeight._groups, function(key, group) {\n group.elements = group.elements.not(that);\n });\n\n // TODO: cleanup empty groups\n\n return this;\n }\n\n if (this.length <= 1 && !opts.target) {\n return this;\n }\n\n // keep track of this group so we can re-apply later on load and resize events\n matchHeight._groups.push({\n elements: this,\n options: opts\n });\n\n // match each element's height to the tallest element in the selection\n matchHeight._apply(this, opts);\n\n return this;\n };\n\n /*\n * plugin global options\n */\n\n matchHeight.version = '0.7.2';\n matchHeight._groups = [];\n matchHeight._throttle = 80;\n matchHeight._maintainScroll = false;\n matchHeight._beforeUpdate = null;\n matchHeight._afterUpdate = null;\n matchHeight._rows = _rows;\n matchHeight._parse = _parse;\n matchHeight._parseOptions = _parseOptions;\n\n /*\n * matchHeight._apply\n * apply matchHeight to given elements\n */\n\n matchHeight._apply = function(elements, options) {\n var opts = _parseOptions(options),\n $elements = $(elements),\n rows = [$elements];\n\n // take note of scroll position\n var scrollTop = $(window).scrollTop(),\n htmlHeight = $('html').outerHeight(true);\n\n // get hidden parents\n var $hiddenParents = $elements.parents().filter(':hidden');\n\n // cache the original inline style\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.data('style-cache', $that.attr('style'));\n });\n\n // temporarily must force hidden parents visible\n $hiddenParents.css('display', 'block');\n\n // get rows if using byRow, otherwise assume one row\n if (opts.byRow && !opts.target) {\n\n // must first force an arbitrary equal height so floating elements break evenly\n $elements.each(function() {\n var $that = $(this),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // cache the original inline style\n $that.data('style-cache', $that.attr('style'));\n\n $that.css({\n 'display': display,\n 'padding-top': '0',\n 'padding-bottom': '0',\n 'margin-top': '0',\n 'margin-bottom': '0',\n 'border-top-width': '0',\n 'border-bottom-width': '0',\n 'height': '100px',\n 'overflow': 'hidden'\n });\n });\n\n // get the array of rows (based on element top position)\n rows = _rows($elements);\n\n // revert original inline styles\n $elements.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || '');\n });\n }\n\n $.each(rows, function(key, row) {\n var $row = $(row),\n targetHeight = 0;\n\n if (!opts.target) {\n // skip apply to rows with only one item\n if (opts.byRow && $row.length <= 1) {\n $row.css(opts.property, '');\n return;\n }\n\n // iterate the row and find the max height\n $row.each(function(){\n var $that = $(this),\n style = $that.attr('style'),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // ensure we get the correct actual height (and not a previously set height value)\n var css = { 'display': display };\n css[opts.property] = '';\n $that.css(css);\n\n // find the max height (including padding, but not margin)\n if ($that.outerHeight(false) > targetHeight) {\n targetHeight = $that.outerHeight(false);\n }\n\n // revert styles\n if (style) {\n $that.attr('style', style);\n } else {\n $that.css('display', '');\n }\n });\n } else {\n // if target set, use the height of the target element\n targetHeight = opts.target.outerHeight(false);\n }\n\n // iterate the row and apply the height to all elements\n $row.each(function(){\n var $that = $(this),\n verticalPadding = 0;\n\n // don't apply to a target\n if (opts.target && $that.is(opts.target)) {\n return;\n }\n\n // handle padding and border correctly (required when not using border-box)\n if ($that.css('box-sizing') !== 'border-box') {\n verticalPadding += _parse($that.css('border-top-width')) + _parse($that.css('border-bottom-width'));\n verticalPadding += _parse($that.css('padding-top')) + _parse($that.css('padding-bottom'));\n }\n\n // set the height (accounting for padding and border)\n $that.css(opts.property, (targetHeight - verticalPadding) + 'px');\n });\n });\n\n // revert hidden parents\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || null);\n });\n\n // restore scroll position if enabled\n if (matchHeight._maintainScroll) {\n $(window).scrollTop((scrollTop / htmlHeight) * $('html').outerHeight(true));\n }\n\n return this;\n };\n\n /*\n * matchHeight._applyDataApi\n * applies matchHeight to all elements with a data-match-height attribute\n */\n\n matchHeight._applyDataApi = function() {\n var groups = {};\n\n // generate groups by their groupId set by elements using data-match-height\n $('[data-match-height], [data-mh]').each(function() {\n var $this = $(this),\n groupId = $this.attr('data-mh') || $this.attr('data-match-height');\n\n if (groupId in groups) {\n groups[groupId] = groups[groupId].add($this);\n } else {\n groups[groupId] = $this;\n }\n });\n\n // apply matchHeight to each group\n $.each(groups, function() {\n this.matchHeight(true);\n });\n };\n\n /*\n * matchHeight._update\n * updates matchHeight on all current groups with their correct options\n */\n\n var _update = function(event) {\n if (matchHeight._beforeUpdate) {\n matchHeight._beforeUpdate(event, matchHeight._groups);\n }\n\n $.each(matchHeight._groups, function() {\n matchHeight._apply(this.elements, this.options);\n });\n\n if (matchHeight._afterUpdate) {\n matchHeight._afterUpdate(event, matchHeight._groups);\n }\n };\n\n matchHeight._update = function(throttle, event) {\n // prevent update if fired from a resize event\n // where the viewport width hasn't actually changed\n // fixes an event looping bug in IE8\n if (event && event.type === 'resize') {\n var windowWidth = $(window).width();\n if (windowWidth === _previousResizeWidth) {\n return;\n }\n _previousResizeWidth = windowWidth;\n }\n\n // throttle updates\n if (!throttle) {\n _update(event);\n } else if (_updateTimeout === -1) {\n _updateTimeout = setTimeout(function() {\n _update(event);\n _updateTimeout = -1;\n }, matchHeight._throttle);\n }\n };\n\n /*\n * bind events\n */\n\n // apply on DOM ready event\n $(matchHeight._applyDataApi);\n\n // use on or bind where supported\n var on = $.fn.on ? 'on' : 'bind';\n\n // update heights on load and resize events\n $(window)[on]('load', function(event) {\n matchHeight._update(false, event);\n });\n\n // throttled update heights on resize events\n $(window)[on]('resize orientationchange', function(event) {\n matchHeight._update(true, event);\n });\n\n});\n\n\n/***/ }),\n\n/***/ 7:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n// Robert Penner's easeInOutQuad\n\n// find the rest of his easing functions here: http://robertpenner.com/easing/\n// find them exported for ES6 consumption here: https://github.com/jaxgeller/ez.js\n\nvar easeInOutQuad = function easeInOutQuad(t, b, c, d) {\n t /= d / 2;\n if (t < 1) return c / 2 * t * t + b;\n t--;\n return -c / 2 * (t * (t - 2) - 1) + b;\n};\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar jumper = function jumper() {\n // private variable cache\n // no variables are created during a jump, preventing memory leaks\n\n var element = void 0; // element to scroll to (node)\n\n var start = void 0; // where scroll starts (px)\n var stop = void 0; // where scroll stops (px)\n\n var offset = void 0; // adjustment from the stop position (px)\n var easing = void 0; // easing function (function)\n var a11y = void 0; // accessibility support flag (boolean)\n\n var distance = void 0; // distance of scroll (px)\n var duration = void 0; // scroll duration (ms)\n\n var timeStart = void 0; // time scroll started (ms)\n var timeElapsed = void 0; // time spent scrolling thus far (ms)\n\n var next = void 0; // next scroll position (px)\n\n var callback = void 0; // to call when done scrolling (function)\n\n // scroll position helper\n\n function location() {\n return window.scrollY || window.pageYOffset;\n }\n\n // element offset helper\n\n function top(element) {\n return element.getBoundingClientRect().top + start;\n }\n\n // rAF loop helper\n\n function loop(timeCurrent) {\n // store time scroll started, if not started already\n if (!timeStart) {\n timeStart = timeCurrent;\n }\n\n // determine time spent scrolling so far\n timeElapsed = timeCurrent - timeStart;\n\n // calculate next scroll position\n next = easing(timeElapsed, start, distance, duration);\n\n // scroll to it\n window.scrollTo(0, next);\n\n // check progress\n timeElapsed < duration ? window.requestAnimationFrame(loop) // continue scroll loop\n : done(); // scrolling is done\n }\n\n // scroll finished helper\n\n function done() {\n // account for rAF time rounding inaccuracies\n window.scrollTo(0, start + distance);\n\n // if scrolling to an element, and accessibility is enabled\n if (element && a11y) {\n // add tabindex indicating programmatic focus\n element.setAttribute('tabindex', '-1');\n\n // focus the element\n element.focus();\n }\n\n // if it exists, fire the callback\n if (typeof callback === 'function') {\n callback();\n }\n\n // reset time for next jump\n timeStart = false;\n }\n\n // API\n\n function jump(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n // resolve options, or use defaults\n duration = options.duration || 1000;\n offset = options.offset || 0;\n callback = options.callback; // \"undefined\" is a suitable default, and won't be called\n easing = options.easing || easeInOutQuad;\n a11y = options.a11y || false;\n\n // cache starting position\n start = location();\n\n // resolve target\n switch (typeof target === 'undefined' ? 'undefined' : _typeof(target)) {\n // scroll from current position\n case 'number':\n element = undefined; // no element to scroll to\n a11y = false; // make sure accessibility is off\n stop = start + target;\n break;\n\n // scroll to element (node)\n // bounding rect is relative to the viewport\n case 'object':\n element = target;\n stop = top(element);\n break;\n\n // scroll to element (selector)\n // bounding rect is relative to the viewport\n case 'string':\n element = document.querySelector(target);\n stop = top(element);\n break;\n }\n\n // resolve scroll distance, accounting for offset\n distance = stop - start + offset;\n\n // resolve duration\n switch (_typeof(options.duration)) {\n // number in ms\n case 'number':\n duration = options.duration;\n break;\n\n // function passed the distance of the scroll\n case 'function':\n duration = options.duration(distance);\n break;\n }\n\n // start the loop\n window.requestAnimationFrame(loop);\n }\n\n // expose only the jump method\n return jump;\n};\n\n// export singleton\n\nvar singleton = jumper();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (singleton);\n\n\n/***/ }),\n\n/***/ 8:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.parseItem = exports.parseItems = exports.jumplinks = exports.linkify = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _jump = __webpack_require__(7);\n\nvar _jump2 = _interopRequireDefault(_jump);\n\nvar _jquery = __webpack_require__(4);\n\nvar _jquery2 = _interopRequireDefault(_jquery);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction linkify(text, type) {\n\ttext = text.replace(/((https?\\:\\/\\/)|(www\\.))(\\S+)(\\w{2,4})(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?/gi, function (url) {\n\t\tvar full_url = !url.match('^https?:\\/\\/') ? 'http://' + url : url;\n\t\treturn '' + url + '';\n\t});\n\tif (type == 'twitter') {\n\t\ttext = text.replace(/(^|\\s)@(\\w+)/g, '$1@$2');\n\t\ttext = text.replace(/(^|\\s)#(\\w+)/g, '$1#$2');\n\t} else if (type == 'facebook') {\n\t\ttext = text.replace(/(^|\\s)#(\\w+)/g, '$1#$2');\n\t}\n\treturn text;\n}\n\nfunction jumplinks(element_id) {\n\t(0, _jquery2.default)(element_id).find('a[href*=\"#\"]').each(function (item, element) {\n\t\t(0, _jquery2.default)(element).on('click', function (event) {\n\t\t\tvar scroolToElement = (0, _jquery2.default)(this);\n\n\t\t\tif (scroolToElement[0].pathname === location.pathname) {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\t(0, _jump2.default)(scroolToElement[0].hash);\n\n\t\t\t\t(0, _jquery2.default)('#mobile_menu_toggle').removeClass('is-active');\n\t\t\t\t(0, _jquery2.default)('#mobile_menu_overlay').addClass('off');\n\t\t\t\t(0, _jquery2.default)('#mobile_menu_generated').addClass('off');\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction parseItems(items) {\n\tvar itemArray = new Array();\n\t_jquery2.default.each(items, function (i, item) {\n\t\titemArray.push(parseItem(item));\n\t});\n\treturn JSON.parse(JSON.stringify(itemArray));\n}\n\nfunction parseItem(item) {\n\tvar json_arr = {};\n\t_jquery2.default.each(item.Properties.$values, function (i, node) {\n\t\tvar val = node.Value;\n\t\tif ((typeof val === 'undefined' ? 'undefined' : _typeof(val)) === \"object\") val = val.$value;\n\t\tjson_arr[node.Name] = val;\n\t});\n\treturn JSON.parse(JSON.stringify(json_arr));\n}\n\nexports.linkify = linkify;\nexports.jumplinks = jumplinks;\nexports.parseItems = parseItems;\nexports.parseItem = parseItem;\n\n/***/ }),\n\n/***/ 9:\n/***/ (function(module, exports, __webpack_require__) {\n\n/**\n * Root reference for iframes.\n */\n\nvar root;\nif (typeof window !== 'undefined') { // Browser window\n root = window;\n} else if (typeof self !== 'undefined') { // Web Worker\n root = self;\n} else { // Other environments\n console.warn(\"Using browser-only version of superagent in non-browser environment\");\n root = this;\n}\n\nvar Emitter = __webpack_require__(10);\nvar RequestBase = __webpack_require__(11);\nvar isObject = __webpack_require__(6);\nvar ResponseBase = __webpack_require__(12);\nvar Agent = __webpack_require__(14);\n\n/**\n * Noop.\n */\n\nfunction noop(){};\n\n/**\n * Expose `request`.\n */\n\nvar request = exports = module.exports = function(method, url) {\n // callback\n if ('function' == typeof url) {\n return new exports.Request('GET', method).end(url);\n }\n\n // url first\n if (1 == arguments.length) {\n return new exports.Request('GET', method);\n }\n\n return new exports.Request(method, url);\n}\n\nexports.Request = Request;\n\n/**\n * Determine XHR.\n */\n\nrequest.getXHR = function () {\n if (root.XMLHttpRequest\n && (!root.location || 'file:' != root.location.protocol\n || !root.ActiveXObject)) {\n return new XMLHttpRequest;\n } else {\n try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP.6.0'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP.3.0'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch(e) {}\n }\n throw Error(\"Browser-only version of superagent could not find XHR\");\n};\n\n/**\n * Removes leading and trailing whitespace, added to support IE.\n *\n * @param {String} s\n * @return {String}\n * @api private\n */\n\nvar trim = ''.trim\n ? function(s) { return s.trim(); }\n : function(s) { return s.replace(/(^\\s*|\\s*$)/g, ''); };\n\n/**\n * Serialize the given `obj`.\n *\n * @param {Object} obj\n * @return {String}\n * @api private\n */\n\nfunction serialize(obj) {\n if (!isObject(obj)) return obj;\n var pairs = [];\n for (var key in obj) {\n pushEncodedKeyValuePair(pairs, key, obj[key]);\n }\n return pairs.join('&');\n}\n\n/**\n * Helps 'serialize' with serializing arrays.\n * Mutates the pairs array.\n *\n * @param {Array} pairs\n * @param {String} key\n * @param {Mixed} val\n */\n\nfunction pushEncodedKeyValuePair(pairs, key, val) {\n if (val != null) {\n if (Array.isArray(val)) {\n val.forEach(function(v) {\n pushEncodedKeyValuePair(pairs, key, v);\n });\n } else if (isObject(val)) {\n for(var subkey in val) {\n pushEncodedKeyValuePair(pairs, key + '[' + subkey + ']', val[subkey]);\n }\n } else {\n pairs.push(encodeURIComponent(key)\n + '=' + encodeURIComponent(val));\n }\n } else if (val === null) {\n pairs.push(encodeURIComponent(key));\n }\n}\n\n/**\n * Expose serialization method.\n */\n\nrequest.serializeObject = serialize;\n\n/**\n * Parse the given x-www-form-urlencoded `str`.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nfunction parseString(str) {\n var obj = {};\n var pairs = str.split('&');\n var pair;\n var pos;\n\n for (var i = 0, len = pairs.length; i < len; ++i) {\n pair = pairs[i];\n pos = pair.indexOf('=');\n if (pos == -1) {\n obj[decodeURIComponent(pair)] = '';\n } else {\n obj[decodeURIComponent(pair.slice(0, pos))] =\n decodeURIComponent(pair.slice(pos + 1));\n }\n }\n\n return obj;\n}\n\n/**\n * Expose parser.\n */\n\nrequest.parseString = parseString;\n\n/**\n * Default MIME type map.\n *\n * superagent.types.xml = 'application/xml';\n *\n */\n\nrequest.types = {\n html: 'text/html',\n json: 'application/json',\n xml: 'text/xml',\n urlencoded: 'application/x-www-form-urlencoded',\n 'form': 'application/x-www-form-urlencoded',\n 'form-data': 'application/x-www-form-urlencoded'\n};\n\n/**\n * Default serialization map.\n *\n * superagent.serialize['application/xml'] = function(obj){\n * return 'generated xml here';\n * };\n *\n */\n\nrequest.serialize = {\n 'application/x-www-form-urlencoded': serialize,\n 'application/json': JSON.stringify\n};\n\n/**\n * Default parsers.\n *\n * superagent.parse['application/xml'] = function(str){\n * return { object parsed from str };\n * };\n *\n */\n\nrequest.parse = {\n 'application/x-www-form-urlencoded': parseString,\n 'application/json': JSON.parse\n};\n\n/**\n * Parse the given header `str` into\n * an object containing the mapped fields.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nfunction parseHeader(str) {\n var lines = str.split(/\\r?\\n/);\n var fields = {};\n var index;\n var line;\n var field;\n var val;\n\n for (var i = 0, len = lines.length; i < len; ++i) {\n line = lines[i];\n index = line.indexOf(':');\n if (index === -1) { // could be empty line, just skip it\n continue;\n }\n field = line.slice(0, index).toLowerCase();\n val = trim(line.slice(index + 1));\n fields[field] = val;\n }\n\n return fields;\n}\n\n/**\n * Check if `mime` is json or has +json structured syntax suffix.\n *\n * @param {String} mime\n * @return {Boolean}\n * @api private\n */\n\nfunction isJSON(mime) {\n // should match /json or +json\n // but not /json-seq\n return /[\\/+]json($|[^-\\w])/.test(mime);\n}\n\n/**\n * Initialize a new `Response` with the given `xhr`.\n *\n * - set flags (.ok, .error, etc)\n * - parse header\n *\n * Examples:\n *\n * Aliasing `superagent` as `request` is nice:\n *\n * request = superagent;\n *\n * We can use the promise-like API, or pass callbacks:\n *\n * request.get('/').end(function(res){});\n * request.get('/', function(res){});\n *\n * Sending data can be chained:\n *\n * request\n * .post('/user')\n * .send({ name: 'tj' })\n * .end(function(res){});\n *\n * Or passed to `.send()`:\n *\n * request\n * .post('/user')\n * .send({ name: 'tj' }, function(res){});\n *\n * Or passed to `.post()`:\n *\n * request\n * .post('/user', { name: 'tj' })\n * .end(function(res){});\n *\n * Or further reduced to a single call for simple cases:\n *\n * request\n * .post('/user', { name: 'tj' }, function(res){});\n *\n * @param {XMLHTTPRequest} xhr\n * @param {Object} options\n * @api private\n */\n\nfunction Response(req) {\n this.req = req;\n this.xhr = this.req.xhr;\n // responseText is accessible only if responseType is '' or 'text' and on older browsers\n this.text = ((this.req.method !='HEAD' && (this.xhr.responseType === '' || this.xhr.responseType === 'text')) || typeof this.xhr.responseType === 'undefined')\n ? this.xhr.responseText\n : null;\n this.statusText = this.req.xhr.statusText;\n var status = this.xhr.status;\n // handle IE9 bug: http://stackoverflow.com/questions/10046972/msie-returns-status-code-of-1223-for-ajax-request\n if (status === 1223) {\n status = 204;\n }\n this._setStatusProperties(status);\n this.header = this.headers = parseHeader(this.xhr.getAllResponseHeaders());\n // getAllResponseHeaders sometimes falsely returns \"\" for CORS requests, but\n // getResponseHeader still works. so we get content-type even if getting\n // other headers fails.\n this.header['content-type'] = this.xhr.getResponseHeader('content-type');\n this._setHeaderProperties(this.header);\n\n if (null === this.text && req._responseType) {\n this.body = this.xhr.response;\n } else {\n this.body = this.req.method != 'HEAD'\n ? this._parseBody(this.text ? this.text : this.xhr.response)\n : null;\n }\n}\n\nResponseBase(Response.prototype);\n\n/**\n * Parse the given body `str`.\n *\n * Used for auto-parsing of bodies. Parsers\n * are defined on the `superagent.parse` object.\n *\n * @param {String} str\n * @return {Mixed}\n * @api private\n */\n\nResponse.prototype._parseBody = function(str) {\n var parse = request.parse[this.type];\n if (this.req._parser) {\n return this.req._parser(this, str);\n }\n if (!parse && isJSON(this.type)) {\n parse = request.parse['application/json'];\n }\n return parse && str && (str.length || str instanceof Object)\n ? parse(str)\n : null;\n};\n\n/**\n * Return an `Error` representative of this response.\n *\n * @return {Error}\n * @api public\n */\n\nResponse.prototype.toError = function(){\n var req = this.req;\n var method = req.method;\n var url = req.url;\n\n var msg = 'cannot ' + method + ' ' + url + ' (' + this.status + ')';\n var err = new Error(msg);\n err.status = this.status;\n err.method = method;\n err.url = url;\n\n return err;\n};\n\n/**\n * Expose `Response`.\n */\n\nrequest.Response = Response;\n\n/**\n * Initialize a new `Request` with the given `method` and `url`.\n *\n * @param {String} method\n * @param {String} url\n * @api public\n */\n\nfunction Request(method, url) {\n var self = this;\n this._query = this._query || [];\n this.method = method;\n this.url = url;\n this.header = {}; // preserves header name case\n this._header = {}; // coerces header names to lowercase\n this.on('end', function(){\n var err = null;\n var res = null;\n\n try {\n res = new Response(self);\n } catch(e) {\n err = new Error('Parser is unable to parse the response');\n err.parse = true;\n err.original = e;\n // issue #675: return the raw response if the response parsing fails\n if (self.xhr) {\n // ie9 doesn't have 'response' property\n err.rawResponse = typeof self.xhr.responseType == 'undefined' ? self.xhr.responseText : self.xhr.response;\n // issue #876: return the http status code if the response parsing fails\n err.status = self.xhr.status ? self.xhr.status : null;\n err.statusCode = err.status; // backwards-compat only\n } else {\n err.rawResponse = null;\n err.status = null;\n }\n\n return self.callback(err);\n }\n\n self.emit('response', res);\n\n var new_err;\n try {\n if (!self._isResponseOK(res)) {\n new_err = new Error(res.statusText || 'Unsuccessful HTTP response');\n }\n } catch(custom_err) {\n new_err = custom_err; // ok() callback can throw\n }\n\n // #1000 don't catch errors from the callback to avoid double calling it\n if (new_err) {\n new_err.original = err;\n new_err.response = res;\n new_err.status = res.status;\n self.callback(new_err, res);\n } else {\n self.callback(null, res);\n }\n });\n}\n\n/**\n * Mixin `Emitter` and `RequestBase`.\n */\n\nEmitter(Request.prototype);\nRequestBase(Request.prototype);\n\n/**\n * Set Content-Type to `type`, mapping values from `request.types`.\n *\n * Examples:\n *\n * superagent.types.xml = 'application/xml';\n *\n * request.post('/')\n * .type('xml')\n * .send(xmlstring)\n * .end(callback);\n *\n * request.post('/')\n * .type('application/xml')\n * .send(xmlstring)\n * .end(callback);\n *\n * @param {String} type\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.type = function(type){\n this.set('Content-Type', request.types[type] || type);\n return this;\n};\n\n/**\n * Set Accept to `type`, mapping values from `request.types`.\n *\n * Examples:\n *\n * superagent.types.json = 'application/json';\n *\n * request.get('/agent')\n * .accept('json')\n * .end(callback);\n *\n * request.get('/agent')\n * .accept('application/json')\n * .end(callback);\n *\n * @param {String} accept\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.accept = function(type){\n this.set('Accept', request.types[type] || type);\n return this;\n};\n\n/**\n * Set Authorization field value with `user` and `pass`.\n *\n * @param {String} user\n * @param {String} [pass] optional in case of using 'bearer' as type\n * @param {Object} options with 'type' property 'auto', 'basic' or 'bearer' (default 'basic')\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.auth = function(user, pass, options){\n if (1 === arguments.length) pass = '';\n if (typeof pass === 'object' && pass !== null) { // pass is optional and can be replaced with options\n options = pass;\n pass = '';\n }\n if (!options) {\n options = {\n type: 'function' === typeof btoa ? 'basic' : 'auto',\n };\n }\n\n var encoder = function(string) {\n if ('function' === typeof btoa) {\n return btoa(string);\n }\n throw new Error('Cannot use basic auth, btoa is not a function');\n };\n\n return this._auth(user, pass, options, encoder);\n};\n\n/**\n * Add query-string `val`.\n *\n * Examples:\n *\n * request.get('/shoes')\n * .query('size=10')\n * .query({ color: 'blue' })\n *\n * @param {Object|String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.query = function(val){\n if ('string' != typeof val) val = serialize(val);\n if (val) this._query.push(val);\n return this;\n};\n\n/**\n * Queue the given `file` as an attachment to the specified `field`,\n * with optional `options` (or filename).\n *\n * ``` js\n * request.post('/upload')\n * .attach('content', new Blob(['hey!'], { type: \"text/html\"}))\n * .end(callback);\n * ```\n *\n * @param {String} field\n * @param {Blob|File} file\n * @param {String|Object} options\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.attach = function(field, file, options){\n if (file) {\n if (this._data) {\n throw Error(\"superagent can't mix .send() and .attach()\");\n }\n\n this._getFormData().append(field, file, options || file.name);\n }\n return this;\n};\n\nRequest.prototype._getFormData = function(){\n if (!this._formData) {\n this._formData = new root.FormData();\n }\n return this._formData;\n};\n\n/**\n * Invoke the callback with `err` and `res`\n * and handle arity check.\n *\n * @param {Error} err\n * @param {Response} res\n * @api private\n */\n\nRequest.prototype.callback = function(err, res){\n if (this._shouldRetry(err, res)) {\n return this._retry();\n }\n\n var fn = this._callback;\n this.clearTimeout();\n\n if (err) {\n if (this._maxRetries) err.retries = this._retries - 1;\n this.emit('error', err);\n }\n\n fn(err, res);\n};\n\n/**\n * Invoke callback with x-domain error.\n *\n * @api private\n */\n\nRequest.prototype.crossDomainError = function(){\n var err = new Error('Request has been terminated\\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.');\n err.crossDomain = true;\n\n err.status = this.status;\n err.method = this.method;\n err.url = this.url;\n\n this.callback(err);\n};\n\n// This only warns, because the request is still likely to work\nRequest.prototype.buffer = Request.prototype.ca = Request.prototype.agent = function(){\n console.warn(\"This is not supported in browser version of superagent\");\n return this;\n};\n\n// This throws, because it can't send/receive data as expected\nRequest.prototype.pipe = Request.prototype.write = function(){\n throw Error(\"Streaming is not supported in browser version of superagent\");\n};\n\n/**\n * Check if `obj` is a host object,\n * we don't want to serialize these :)\n *\n * @param {Object} obj\n * @return {Boolean}\n * @api private\n */\nRequest.prototype._isHost = function _isHost(obj) {\n // Native objects stringify to [object File], [object Blob], [object FormData], etc.\n return obj && 'object' === typeof obj && !Array.isArray(obj) && Object.prototype.toString.call(obj) !== '[object Object]';\n}\n\n/**\n * Initiate request, invoking callback `fn(res)`\n * with an instanceof `Response`.\n *\n * @param {Function} fn\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.end = function(fn){\n if (this._endCalled) {\n console.warn(\"Warning: .end() was called twice. This is not supported in superagent\");\n }\n this._endCalled = true;\n\n // store callback\n this._callback = fn || noop;\n\n // querystring\n this._finalizeQueryString();\n\n return this._end();\n};\n\nRequest.prototype._end = function() {\n var self = this;\n var xhr = (this.xhr = request.getXHR());\n var data = this._formData || this._data;\n\n this._setTimeouts();\n\n // state change\n xhr.onreadystatechange = function(){\n var readyState = xhr.readyState;\n if (readyState >= 2 && self._responseTimeoutTimer) {\n clearTimeout(self._responseTimeoutTimer);\n }\n if (4 != readyState) {\n return;\n }\n\n // In IE9, reads to any property (e.g. status) off of an aborted XHR will\n // result in the error \"Could not complete the operation due to error c00c023f\"\n var status;\n try { status = xhr.status } catch(e) { status = 0; }\n\n if (!status) {\n if (self.timedout || self._aborted) return;\n return self.crossDomainError();\n }\n self.emit('end');\n };\n\n // progress\n var handleProgress = function(direction, e) {\n if (e.total > 0) {\n e.percent = e.loaded / e.total * 100;\n }\n e.direction = direction;\n self.emit('progress', e);\n };\n if (this.hasListeners('progress')) {\n try {\n xhr.onprogress = handleProgress.bind(null, 'download');\n if (xhr.upload) {\n xhr.upload.onprogress = handleProgress.bind(null, 'upload');\n }\n } catch(e) {\n // Accessing xhr.upload fails in IE from a web worker, so just pretend it doesn't exist.\n // Reported here:\n // https://connect.microsoft.com/IE/feedback/details/837245/xmlhttprequest-upload-throws-invalid-argument-when-used-from-web-worker-context\n }\n }\n\n // initiate request\n try {\n if (this.username && this.password) {\n xhr.open(this.method, this.url, true, this.username, this.password);\n } else {\n xhr.open(this.method, this.url, true);\n }\n } catch (err) {\n // see #1149\n return this.callback(err);\n }\n\n // CORS\n if (this._withCredentials) xhr.withCredentials = true;\n\n // body\n if (!this._formData && 'GET' != this.method && 'HEAD' != this.method && 'string' != typeof data && !this._isHost(data)) {\n // serialize stuff\n var contentType = this._header['content-type'];\n var serialize = this._serializer || request.serialize[contentType ? contentType.split(';')[0] : ''];\n if (!serialize && isJSON(contentType)) {\n serialize = request.serialize['application/json'];\n }\n if (serialize) data = serialize(data);\n }\n\n // set header fields\n for (var field in this.header) {\n if (null == this.header[field]) continue;\n\n if (this.header.hasOwnProperty(field))\n xhr.setRequestHeader(field, this.header[field]);\n }\n\n if (this._responseType) {\n xhr.responseType = this._responseType;\n }\n\n // send stuff\n this.emit('request', this);\n\n // IE11 xhr.send(undefined) sends 'undefined' string as POST payload (instead of nothing)\n // We need null here if data is undefined\n xhr.send(typeof data !== 'undefined' ? data : null);\n return this;\n};\n\nrequest.agent = function() {\n return new Agent();\n};\n\n[\"GET\", \"POST\", \"OPTIONS\", \"PATCH\", \"PUT\", \"DELETE\"].forEach(function(method) {\n Agent.prototype[method.toLowerCase()] = function(url, fn) {\n var req = new request.Request(method, url);\n this._setDefaults(req);\n if (fn) {\n req.end(fn);\n }\n return req;\n };\n});\n\nAgent.prototype.del = Agent.prototype['delete'];\n\n/**\n * GET `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.get = function(url, data, fn) {\n var req = request('GET', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.query(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * HEAD `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.head = function(url, data, fn) {\n var req = request('HEAD', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.query(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * OPTIONS query to `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.options = function(url, data, fn) {\n var req = request('OPTIONS', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * DELETE `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nfunction del(url, data, fn) {\n var req = request('DELETE', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n}\n\nrequest['del'] = del;\nrequest['delete'] = del;\n\n/**\n * PATCH `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.patch = function(url, data, fn) {\n var req = request('PATCH', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * POST `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.post = function(url, data, fn) {\n var req = request('POST', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * PUT `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.put = function(url, data, fn) {\n var req = request('PUT', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n\n/***/ })\n\n/******/ });\n\n\n// WEBPACK FOOTER //\n// bundle.global-scripts.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 61);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 7fce4b75e3a540c4f172","\r\n/**\r\n * Expose `Emitter`.\r\n */\r\n\r\nif (typeof module !== 'undefined') {\r\n module.exports = Emitter;\r\n}\r\n\r\n/**\r\n * Initialize a new `Emitter`.\r\n *\r\n * @api public\r\n */\r\n\r\nfunction Emitter(obj) {\r\n if (obj) return mixin(obj);\r\n};\r\n\r\n/**\r\n * Mixin the emitter properties.\r\n *\r\n * @param {Object} obj\r\n * @return {Object}\r\n * @api private\r\n */\r\n\r\nfunction mixin(obj) {\r\n for (var key in Emitter.prototype) {\r\n obj[key] = Emitter.prototype[key];\r\n }\r\n return obj;\r\n}\r\n\r\n/**\r\n * Listen on the given `event` with `fn`.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.on =\r\nEmitter.prototype.addEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\r\n .push(fn);\r\n return this;\r\n};\r\n\r\n/**\r\n * Adds an `event` listener that will be invoked a single\r\n * time then automatically removed.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.once = function(event, fn){\r\n function on() {\r\n this.off(event, on);\r\n fn.apply(this, arguments);\r\n }\r\n\r\n on.fn = fn;\r\n this.on(event, on);\r\n return this;\r\n};\r\n\r\n/**\r\n * Remove the given callback for `event` or all\r\n * registered callbacks.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.off =\r\nEmitter.prototype.removeListener =\r\nEmitter.prototype.removeAllListeners =\r\nEmitter.prototype.removeEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n\r\n // all\r\n if (0 == arguments.length) {\r\n this._callbacks = {};\r\n return this;\r\n }\r\n\r\n // specific event\r\n var callbacks = this._callbacks['$' + event];\r\n if (!callbacks) return this;\r\n\r\n // remove all handlers\r\n if (1 == arguments.length) {\r\n delete this._callbacks['$' + event];\r\n return this;\r\n }\r\n\r\n // remove specific handler\r\n var cb;\r\n for (var i = 0; i < callbacks.length; i++) {\r\n cb = callbacks[i];\r\n if (cb === fn || cb.fn === fn) {\r\n callbacks.splice(i, 1);\r\n break;\r\n }\r\n }\r\n\r\n // Remove event specific arrays for event types that no\r\n // one is subscribed for to avoid memory leak.\r\n if (callbacks.length === 0) {\r\n delete this._callbacks['$' + event];\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Emit `event` with the given args.\r\n *\r\n * @param {String} event\r\n * @param {Mixed} ...\r\n * @return {Emitter}\r\n */\r\n\r\nEmitter.prototype.emit = function(event){\r\n this._callbacks = this._callbacks || {};\r\n\r\n var args = new Array(arguments.length - 1)\r\n , callbacks = this._callbacks['$' + event];\r\n\r\n for (var i = 1; i < arguments.length; i++) {\r\n args[i - 1] = arguments[i];\r\n }\r\n\r\n if (callbacks) {\r\n callbacks = callbacks.slice(0);\r\n for (var i = 0, len = callbacks.length; i < len; ++i) {\r\n callbacks[i].apply(this, args);\r\n }\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Return array of callbacks for `event`.\r\n *\r\n * @param {String} event\r\n * @return {Array}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.listeners = function(event){\r\n this._callbacks = this._callbacks || {};\r\n return this._callbacks['$' + event] || [];\r\n};\r\n\r\n/**\r\n * Check if this emitter has `event` handlers.\r\n *\r\n * @param {String} event\r\n * @return {Boolean}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.hasListeners = function(event){\r\n return !! this.listeners(event).length;\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/component-emitter/index.js\n// module id = 10\n// module chunks = 0 1 2 3","'use strict';\n\n/**\n * Module of mixed-in functions shared between node and client code\n */\nvar isObject = require('./is-object');\n\n/**\n * Expose `RequestBase`.\n */\n\nmodule.exports = RequestBase;\n\n/**\n * Initialize a new `RequestBase`.\n *\n * @api public\n */\n\nfunction RequestBase(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the prototype properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in RequestBase.prototype) {\n obj[key] = RequestBase.prototype[key];\n }\n return obj;\n}\n\n/**\n * Clear previous timeout.\n *\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.clearTimeout = function _clearTimeout(){\n clearTimeout(this._timer);\n clearTimeout(this._responseTimeoutTimer);\n delete this._timer;\n delete this._responseTimeoutTimer;\n return this;\n};\n\n/**\n * Override default response body parser\n *\n * This function will be called to convert incoming data into request.body\n *\n * @param {Function}\n * @api public\n */\n\nRequestBase.prototype.parse = function parse(fn){\n this._parser = fn;\n return this;\n};\n\n/**\n * Set format of binary response body.\n * In browser valid formats are 'blob' and 'arraybuffer',\n * which return Blob and ArrayBuffer, respectively.\n *\n * In Node all values result in Buffer.\n *\n * Examples:\n *\n * req.get('/')\n * .responseType('blob')\n * .end(callback);\n *\n * @param {String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.responseType = function(val){\n this._responseType = val;\n return this;\n};\n\n/**\n * Override default request body serializer\n *\n * This function will be called to convert data set via .send or .attach into payload to send\n *\n * @param {Function}\n * @api public\n */\n\nRequestBase.prototype.serialize = function serialize(fn){\n this._serializer = fn;\n return this;\n};\n\n/**\n * Set timeouts.\n *\n * - response timeout is time between sending request and receiving the first byte of the response. Includes DNS and connection time.\n * - deadline is the time from start of the request to receiving response body in full. If the deadline is too short large files may not load at all on slow connections.\n *\n * Value of 0 or false means no timeout.\n *\n * @param {Number|Object} ms or {response, deadline}\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.timeout = function timeout(options){\n if (!options || 'object' !== typeof options) {\n this._timeout = options;\n this._responseTimeout = 0;\n return this;\n }\n\n for(var option in options) {\n switch(option) {\n case 'deadline':\n this._timeout = options.deadline;\n break;\n case 'response':\n this._responseTimeout = options.response;\n break;\n default:\n console.warn(\"Unknown timeout option\", option);\n }\n }\n return this;\n};\n\n/**\n * Set number of retry attempts on error.\n *\n * Failed requests will be retried 'count' times if timeout or err.code >= 500.\n *\n * @param {Number} count\n * @param {Function} [fn]\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.retry = function retry(count, fn){\n // Default to 1 if no count passed or true\n if (arguments.length === 0 || count === true) count = 1;\n if (count <= 0) count = 0;\n this._maxRetries = count;\n this._retries = 0;\n this._retryCallback = fn;\n return this;\n};\n\nvar ERROR_CODES = [\n 'ECONNRESET',\n 'ETIMEDOUT',\n 'EADDRINFO',\n 'ESOCKETTIMEDOUT'\n];\n\n/**\n * Determine if a request should be retried.\n * (Borrowed from segmentio/superagent-retry)\n *\n * @param {Error} err\n * @param {Response} [res]\n * @returns {Boolean}\n */\nRequestBase.prototype._shouldRetry = function(err, res) {\n if (!this._maxRetries || this._retries++ >= this._maxRetries) {\n return false;\n }\n if (this._retryCallback) {\n try {\n var override = this._retryCallback(err, res);\n if (override === true) return true;\n if (override === false) return false;\n // undefined falls back to defaults\n } catch(e) {\n console.error(e);\n }\n }\n if (res && res.status && res.status >= 500 && res.status != 501) return true;\n if (err) {\n if (err.code && ~ERROR_CODES.indexOf(err.code)) return true;\n // Superagent timeout\n if (err.timeout && err.code == 'ECONNABORTED') return true;\n if (err.crossDomain) return true;\n }\n return false;\n};\n\n/**\n * Retry request\n *\n * @return {Request} for chaining\n * @api private\n */\n\nRequestBase.prototype._retry = function() {\n\n this.clearTimeout();\n\n // node\n if (this.req) {\n this.req = null;\n this.req = this.request();\n }\n\n this._aborted = false;\n this.timedout = false;\n\n return this._end();\n};\n\n/**\n * Promise support\n *\n * @param {Function} resolve\n * @param {Function} [reject]\n * @return {Request}\n */\n\nRequestBase.prototype.then = function then(resolve, reject) {\n if (!this._fullfilledPromise) {\n var self = this;\n if (this._endCalled) {\n console.warn(\"Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises\");\n }\n this._fullfilledPromise = new Promise(function(innerResolve, innerReject) {\n self.end(function(err, res) {\n if (err) innerReject(err);\n else innerResolve(res);\n });\n });\n }\n return this._fullfilledPromise.then(resolve, reject);\n};\n\nRequestBase.prototype['catch'] = function(cb) {\n return this.then(undefined, cb);\n};\n\n/**\n * Allow for extension\n */\n\nRequestBase.prototype.use = function use(fn) {\n fn(this);\n return this;\n};\n\nRequestBase.prototype.ok = function(cb) {\n if ('function' !== typeof cb) throw Error(\"Callback required\");\n this._okCallback = cb;\n return this;\n};\n\nRequestBase.prototype._isResponseOK = function(res) {\n if (!res) {\n return false;\n }\n\n if (this._okCallback) {\n return this._okCallback(res);\n }\n\n return res.status >= 200 && res.status < 300;\n};\n\n/**\n * Get request header `field`.\n * Case-insensitive.\n *\n * @param {String} field\n * @return {String}\n * @api public\n */\n\nRequestBase.prototype.get = function(field){\n return this._header[field.toLowerCase()];\n};\n\n/**\n * Get case-insensitive header `field` value.\n * This is a deprecated internal API. Use `.get(field)` instead.\n *\n * (getHeader is no longer used internally by the superagent code base)\n *\n * @param {String} field\n * @return {String}\n * @api private\n * @deprecated\n */\n\nRequestBase.prototype.getHeader = RequestBase.prototype.get;\n\n/**\n * Set header `field` to `val`, or multiple fields with one object.\n * Case-insensitive.\n *\n * Examples:\n *\n * req.get('/')\n * .set('Accept', 'application/json')\n * .set('X-API-Key', 'foobar')\n * .end(callback);\n *\n * req.get('/')\n * .set({ Accept: 'application/json', 'X-API-Key': 'foobar' })\n * .end(callback);\n *\n * @param {String|Object} field\n * @param {String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.set = function(field, val){\n if (isObject(field)) {\n for (var key in field) {\n this.set(key, field[key]);\n }\n return this;\n }\n this._header[field.toLowerCase()] = val;\n this.header[field] = val;\n return this;\n};\n\n/**\n * Remove header `field`.\n * Case-insensitive.\n *\n * Example:\n *\n * req.get('/')\n * .unset('User-Agent')\n * .end(callback);\n *\n * @param {String} field\n */\nRequestBase.prototype.unset = function(field){\n delete this._header[field.toLowerCase()];\n delete this.header[field];\n return this;\n};\n\n/**\n * Write the field `name` and `val`, or multiple fields with one object\n * for \"multipart/form-data\" request bodies.\n *\n * ``` js\n * request.post('/upload')\n * .field('foo', 'bar')\n * .end(callback);\n *\n * request.post('/upload')\n * .field({ foo: 'bar', baz: 'qux' })\n * .end(callback);\n * ```\n *\n * @param {String|Object} name\n * @param {String|Blob|File|Buffer|fs.ReadStream} val\n * @return {Request} for chaining\n * @api public\n */\nRequestBase.prototype.field = function(name, val) {\n // name should be either a string or an object.\n if (null === name || undefined === name) {\n throw new Error('.field(name, val) name can not be empty');\n }\n\n if (this._data) {\n console.error(\".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()\");\n }\n\n if (isObject(name)) {\n for (var key in name) {\n this.field(key, name[key]);\n }\n return this;\n }\n\n if (Array.isArray(val)) {\n for (var i in val) {\n this.field(name, val[i]);\n }\n return this;\n }\n\n // val should be defined now\n if (null === val || undefined === val) {\n throw new Error('.field(name, val) val can not be empty');\n }\n if ('boolean' === typeof val) {\n val = '' + val;\n }\n this._getFormData().append(name, val);\n return this;\n};\n\n/**\n * Abort the request, and clear potential timeout.\n *\n * @return {Request}\n * @api public\n */\nRequestBase.prototype.abort = function(){\n if (this._aborted) {\n return this;\n }\n this._aborted = true;\n this.xhr && this.xhr.abort(); // browser\n this.req && this.req.abort(); // node\n this.clearTimeout();\n this.emit('abort');\n return this;\n};\n\nRequestBase.prototype._auth = function(user, pass, options, base64Encoder) {\n switch (options.type) {\n case 'basic':\n this.set('Authorization', 'Basic ' + base64Encoder(user + ':' + pass));\n break;\n\n case 'auto':\n this.username = user;\n this.password = pass;\n break;\n\n case 'bearer': // usage would be .auth(accessToken, { type: 'bearer' })\n this.set('Authorization', 'Bearer ' + user);\n break;\n }\n return this;\n};\n\n/**\n * Enable transmission of cookies with x-domain requests.\n *\n * Note that for this to work the origin must not be\n * using \"Access-Control-Allow-Origin\" with a wildcard,\n * and also must set \"Access-Control-Allow-Credentials\"\n * to \"true\".\n *\n * @api public\n */\n\nRequestBase.prototype.withCredentials = function(on) {\n // This is browser-only functionality. Node side is no-op.\n if (on == undefined) on = true;\n this._withCredentials = on;\n return this;\n};\n\n/**\n * Set the max redirects to `n`. Does noting in browser XHR implementation.\n *\n * @param {Number} n\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.redirects = function(n){\n this._maxRedirects = n;\n return this;\n};\n\n/**\n * Maximum size of buffered response body, in bytes. Counts uncompressed size.\n * Default 200MB.\n *\n * @param {Number} n\n * @return {Request} for chaining\n */\nRequestBase.prototype.maxResponseSize = function(n){\n if ('number' !== typeof n) {\n throw TypeError(\"Invalid argument\");\n }\n this._maxResponseSize = n;\n return this;\n};\n\n/**\n * Convert to a plain javascript object (not JSON string) of scalar properties.\n * Note as this method is designed to return a useful non-this value,\n * it cannot be chained.\n *\n * @return {Object} describing method, url, and data of this request\n * @api public\n */\n\nRequestBase.prototype.toJSON = function() {\n return {\n method: this.method,\n url: this.url,\n data: this._data,\n headers: this._header,\n };\n};\n\n/**\n * Send `data` as the request body, defaulting the `.type()` to \"json\" when\n * an object is given.\n *\n * Examples:\n *\n * // manual json\n * request.post('/user')\n * .type('json')\n * .send('{\"name\":\"tj\"}')\n * .end(callback)\n *\n * // auto json\n * request.post('/user')\n * .send({ name: 'tj' })\n * .end(callback)\n *\n * // manual x-www-form-urlencoded\n * request.post('/user')\n * .type('form')\n * .send('name=tj')\n * .end(callback)\n *\n * // auto x-www-form-urlencoded\n * request.post('/user')\n * .type('form')\n * .send({ name: 'tj' })\n * .end(callback)\n *\n * // defaults to x-www-form-urlencoded\n * request.post('/user')\n * .send('name=tobi')\n * .send('species=ferret')\n * .end(callback)\n *\n * @param {String|Object} data\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.send = function(data){\n var isObj = isObject(data);\n var type = this._header['content-type'];\n\n if (this._formData) {\n console.error(\".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()\");\n }\n\n if (isObj && !this._data) {\n if (Array.isArray(data)) {\n this._data = [];\n } else if (!this._isHost(data)) {\n this._data = {};\n }\n } else if (data && this._data && this._isHost(this._data)) {\n throw Error(\"Can't merge these send calls\");\n }\n\n // merge\n if (isObj && isObject(this._data)) {\n for (var key in data) {\n this._data[key] = data[key];\n }\n } else if ('string' == typeof data) {\n // default to x-www-form-urlencoded\n if (!type) this.type('form');\n type = this._header['content-type'];\n if ('application/x-www-form-urlencoded' == type) {\n this._data = this._data\n ? this._data + '&' + data\n : data;\n } else {\n this._data = (this._data || '') + data;\n }\n } else {\n this._data = data;\n }\n\n if (!isObj || this._isHost(data)) {\n return this;\n }\n\n // default to json\n if (!type) this.type('json');\n return this;\n};\n\n/**\n * Sort `querystring` by the sort function\n *\n *\n * Examples:\n *\n * // default order\n * request.get('/user')\n * .query('name=Nick')\n * .query('search=Manny')\n * .sortQuery()\n * .end(callback)\n *\n * // customized sort function\n * request.get('/user')\n * .query('name=Nick')\n * .query('search=Manny')\n * .sortQuery(function(a, b){\n * return a.length - b.length;\n * })\n * .end(callback)\n *\n *\n * @param {Function} sort\n * @return {Request} for chaining\n * @api public\n */\n\nRequestBase.prototype.sortQuery = function(sort) {\n // _sort default to true but otherwise can be a function or boolean\n this._sort = typeof sort === 'undefined' ? true : sort;\n return this;\n};\n\n/**\n * Compose querystring to append to req.url\n *\n * @api private\n */\nRequestBase.prototype._finalizeQueryString = function(){\n var query = this._query.join('&');\n if (query) {\n this.url += (this.url.indexOf('?') >= 0 ? '&' : '?') + query;\n }\n this._query.length = 0; // Makes the call idempotent\n\n if (this._sort) {\n var index = this.url.indexOf('?');\n if (index >= 0) {\n var queryArr = this.url.substring(index + 1).split('&');\n if ('function' === typeof this._sort) {\n queryArr.sort(this._sort);\n } else {\n queryArr.sort();\n }\n this.url = this.url.substring(0, index) + '?' + queryArr.join('&');\n }\n }\n};\n\n// For backwards compat only\nRequestBase.prototype._appendQueryString = function() {console.trace(\"Unsupported\");}\n\n/**\n * Invoke callback with timeout error.\n *\n * @api private\n */\n\nRequestBase.prototype._timeoutError = function(reason, timeout, errno){\n if (this._aborted) {\n return;\n }\n var err = new Error(reason + timeout + 'ms exceeded');\n err.timeout = timeout;\n err.code = 'ECONNABORTED';\n err.errno = errno;\n this.timedout = true;\n this.abort();\n this.callback(err);\n};\n\nRequestBase.prototype._setTimeouts = function() {\n var self = this;\n\n // deadline\n if (this._timeout && !this._timer) {\n this._timer = setTimeout(function(){\n self._timeoutError('Timeout of ', self._timeout, 'ETIME');\n }, this._timeout);\n }\n // response timeout\n if (this._responseTimeout && !this._responseTimeoutTimer) {\n this._responseTimeoutTimer = setTimeout(function(){\n self._timeoutError('Response timeout of ', self._responseTimeout, 'ETIMEDOUT');\n }, this._responseTimeout);\n }\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/request-base.js\n// module id = 11\n// module chunks = 0 1 2 3","'use strict';\n\n/**\n * Module dependencies.\n */\n\nvar utils = require('./utils');\n\n/**\n * Expose `ResponseBase`.\n */\n\nmodule.exports = ResponseBase;\n\n/**\n * Initialize a new `ResponseBase`.\n *\n * @api public\n */\n\nfunction ResponseBase(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the prototype properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in ResponseBase.prototype) {\n obj[key] = ResponseBase.prototype[key];\n }\n return obj;\n}\n\n/**\n * Get case-insensitive `field` value.\n *\n * @param {String} field\n * @return {String}\n * @api public\n */\n\nResponseBase.prototype.get = function(field) {\n return this.header[field.toLowerCase()];\n};\n\n/**\n * Set header related properties:\n *\n * - `.type` the content type without params\n *\n * A response of \"Content-Type: text/plain; charset=utf-8\"\n * will provide you with a `.type` of \"text/plain\".\n *\n * @param {Object} header\n * @api private\n */\n\nResponseBase.prototype._setHeaderProperties = function(header){\n // TODO: moar!\n // TODO: make this a util\n\n // content-type\n var ct = header['content-type'] || '';\n this.type = utils.type(ct);\n\n // params\n var params = utils.params(ct);\n for (var key in params) this[key] = params[key];\n\n this.links = {};\n\n // links\n try {\n if (header.link) {\n this.links = utils.parseLinks(header.link);\n }\n } catch (err) {\n // ignore\n }\n};\n\n/**\n * Set flags such as `.ok` based on `status`.\n *\n * For example a 2xx response will give you a `.ok` of __true__\n * whereas 5xx will be __false__ and `.error` will be __true__. The\n * `.clientError` and `.serverError` are also available to be more\n * specific, and `.statusType` is the class of error ranging from 1..5\n * sometimes useful for mapping respond colors etc.\n *\n * \"sugar\" properties are also defined for common cases. Currently providing:\n *\n * - .noContent\n * - .badRequest\n * - .unauthorized\n * - .notAcceptable\n * - .notFound\n *\n * @param {Number} status\n * @api private\n */\n\nResponseBase.prototype._setStatusProperties = function(status){\n var type = status / 100 | 0;\n\n // status / class\n this.status = this.statusCode = status;\n this.statusType = type;\n\n // basics\n this.info = 1 == type;\n this.ok = 2 == type;\n this.redirect = 3 == type;\n this.clientError = 4 == type;\n this.serverError = 5 == type;\n this.error = (4 == type || 5 == type)\n ? this.toError()\n : false;\n\n // sugar\n this.created = 201 == status;\n this.accepted = 202 == status;\n this.noContent = 204 == status;\n this.badRequest = 400 == status;\n this.unauthorized = 401 == status;\n this.notAcceptable = 406 == status;\n this.forbidden = 403 == status;\n this.notFound = 404 == status;\n this.unprocessableEntity = 422 == status;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/response-base.js\n// module id = 12\n// module chunks = 0 1 2 3","'use strict';\n\n/**\n * Return the mime type for the given `str`.\n *\n * @param {String} str\n * @return {String}\n * @api private\n */\n\nexports.type = function(str){\n return str.split(/ *; */).shift();\n};\n\n/**\n * Return header field parameters.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nexports.params = function(str){\n return str.split(/ *; */).reduce(function(obj, str){\n var parts = str.split(/ *= */);\n var key = parts.shift();\n var val = parts.shift();\n\n if (key && val) obj[key] = val;\n return obj;\n }, {});\n};\n\n/**\n * Parse Link header fields.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nexports.parseLinks = function(str){\n return str.split(/ *, */).reduce(function(obj, str){\n var parts = str.split(/ *; */);\n var url = parts[0].slice(1, -1);\n var rel = parts[1].split(/ *= */)[1].slice(1, -1);\n obj[rel] = url;\n return obj;\n }, {});\n};\n\n/**\n * Strip content related fields from `header`.\n *\n * @param {Object} header\n * @return {Object} header\n * @api private\n */\n\nexports.cleanHeader = function(header, changesOrigin){\n delete header['content-type'];\n delete header['content-length'];\n delete header['transfer-encoding'];\n delete header['host'];\n // secuirty\n if (changesOrigin) {\n delete header['authorization'];\n delete header['cookie'];\n }\n return header;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/utils.js\n// module id = 13\n// module chunks = 0 1 2 3","function Agent() {\n this._defaults = [];\n}\n\n[\"use\", \"on\", \"once\", \"set\", \"query\", \"type\", \"accept\", \"auth\", \"withCredentials\", \"sortQuery\", \"retry\", \"ok\", \"redirects\",\n \"timeout\", \"buffer\", \"serialize\", \"parse\", \"ca\", \"key\", \"pfx\", \"cert\"].forEach(function(fn) {\n /** Default setting for all requests from this agent */\n Agent.prototype[fn] = function(/*varargs*/) {\n this._defaults.push({fn:fn, arguments:arguments});\n return this;\n }\n});\n\nAgent.prototype._setDefaults = function(req) {\n this._defaults.forEach(function(def) {\n req[def.fn].apply(req, def.arguments);\n });\n};\n\nmodule.exports = Agent;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/agent-base.js\n// module id = 14\n// module chunks = 0 1 2 3","module.exports = jQuery;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"jQuery\"\n// module id = 4\n// module chunks = 0 1 2 3 4","'use strict';\n\n/**\n * Check if `obj` is an object.\n *\n * @param {Object} obj\n * @return {Boolean}\n * @api private\n */\n\nfunction isObject(obj) {\n return null !== obj && 'object' === typeof obj;\n}\n\nmodule.exports = isObject;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/is-object.js\n// module id = 6\n// module chunks = 0 1 2 3","import $ from 'jquery';\nimport Modernizr from 'modernizr';\nimport jump from 'jump.js';\nimport './modules/_skip-link-focus-fix';\nimport './modules/_menus';\nimport 'jquery-match-height';\nimport Request from 'superagent';\n\n/**\n * Notes:\n *\n * Although jQuery is imported above, it is not bundulded\n * with the transpiled assets. jQuery needs to be global\n * on the website.\n *\n * All imports belong at the top of the file.\n *\n * Webpack only outputs this one script file, if you need\n * another file then add it to the scripts-list.js file as\n * another line in the scripts_list object.\n *\n * The scripts_list const is imported into the webpack\n * config. I've done this so that you do not have to\n * wade through the consfig to find what is being\n * compiled out as its own file.\n */\n\nconst alertUrl = 'api/NotificationSet/_execute';\n\n/*************** Match Height ***************/\n$('.match-height').matchHeight();\n\n/*************** SVG image replacement ***************/\nif(!Modernizr.svg) {\n\t$('img[src*=\"svg\"]').attr('src', function() {\n\t\treturn $(this).attr('src').replace('.svg', '.png');\n\t});\n}\n\n/*************** Flex Video ***************/\n$('iframe[src*=\"player.vimeo.com\"],[src*=\"www.youtube.com\"],object[id=\"flashObj\"]').each(function() {\n\tif (!$(this).parent().hasClass('flex-video')) {\n\t\t$(this).wrap('
');\n\t}\n});\n\n/*************** Search region ***************/\n$('.search-button a').on('click', function(event) {\n\tevent.preventDefault();\n\n\t$('.search-region').slideToggle(function() {\n\t\t$('.search-field').focus();\n\t});\n});\n\n/*************** Scroll to top ***************/\nlet scroll_distance;\nconst back_to_top = $('#scroll_top');\n\n$(document).scroll(function() {\n\tscroll_distance = $(window).scrollTop();\n\n\tif ( scroll_distance >= 205 ) {\n\t\tback_to_top.addClass('show');\n\t} else {\n\t\tback_to_top.removeClass('show');\n\t}\n});\n\nback_to_top.on('click', function(event){\n\tevent.preventDefault();\n\n\tjump('#contentstart');\n});\n\n$('body').on('click', '.download-link', function(){\n\tvar src = $(this).data('src');\n\tif ((src !== null) && (src !== '')){\n\t\tif (src.includes('/')){\n\t\t\tRequest\n\t\t\t\t.post('/api/Document/_execute')\n\t\t\t\t.use((req) => {\n\t\t\t\t\treq.header.contentType = 'application/json';\n\t\t\t\t\treq.header.RequestVerificationToken = $('#__RequestVerificationToken').val();\n\t\t\t\t\treturn req;\n\t\t\t\t})\n\t\t\t\t.send({\n\t\t\t\t\t'$type' : 'Asi.Soa.Core.DataContracts.GenericExecuteRequest, Asi.Contracts',\n\t\t\t\t\t'EntityTypeName' : 'Document',\n\t\t\t\t\t'OperationName' : 'FindByPath',\n\t\t\t\t\t'Parameters' : {\n\t\t\t\t\t\t'$type' : 'System.Collections.ObjectModel.Collection`1[[System.Object, mscorlib]], mscorlib',\n\t\t\t\t\t\t'$values' : [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'$type' : 'System.String',\n\t\t\t\t\t\t\t\t'$value' : src\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t]\n\t\t\t\t\t},\n\t\t\t\t\t'UseJson':false,\n\t\t\t\t\t'ParameterTypeNames':{\n\t\t\t\t\t\t'$type':'System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib',\n\t\t\t\t\t\t'$values':[\n\t\t\t\t\t\t\t'System.String'\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.then(res => {\n\t\t\t\t\tif (res && res.body){\n\t\t\t\t\t\tprocessDocument(res.body);\n\t\t\t\t\t}else{\n\t\t\t\t\t\talert('Error: Documnent can\\'t be found');\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t}\n});\n\nfunction processDocument(item){\n\tvar contentType = 'application/octet-stream';\n\tvar success = false;\n\tvar filename = item.Name;\n\n\ttry\n\t{\n\t\t// Try using msSaveBlob if supported\n\t\tlet blob = new Blob([item.Data], { type: contentType });\n\t\tif(navigator.msSaveBlob)\n\t\t\tnavigator.msSaveBlob(blob, filename);\n\t\telse {\n\t\t\t// Try using other saveBlob implementations, if available\n\t\t\tvar saveBlob = navigator.webkitSaveBlob || navigator.mozSaveBlob || navigator.saveBlob;\n\t\t\tif(saveBlob === undefined) throw 'Not supported';\n\t\t\tsaveBlob(blob, filename);\n\t\t}\n\t\tsuccess = true;\n\t} catch(ex) {\n\t\t//eslint-disable-next-line no-console\n\t\tconsole.error('saveBlob method failed with the following exception:');\n\t\t//eslint-disable-next-line no-console\n\t\tconsole.error(ex);\n\t}\n\n\tif(!success)\n\t{\n\t\t// Get the blob url creator\n\t\tvar urlCreator = window.URL || window.webkitURL || window.mozURL || window.msURL;\n\t\tif(urlCreator)\n\t\t{\n\t\t\t// Try to use a download link\n\t\t\tvar link = document.createElement('a');\n\t\t\tif('download' in link)\n\t\t\t{\n\t\t\t\t// Try to simulate a click\n\t\t\t\ttry\n\t\t\t\t{\n\t\t\t\t\t// Prepare a blob URL\n\t\t\t\t\tlet blob = new Blob([item.Data], { type: contentType });\n\t\t\t\t\tlet url = urlCreator.createObjectURL(blob);\n\t\t\t\t\tlink.setAttribute('href', url);\n\n\t\t\t\t\t// Set the download attribute (Supported in Chrome 14+ / Firefox 20+)\n\t\t\t\t\tlink.setAttribute('download', filename);\n\n\t\t\t\t\t// Simulate clicking the download link\n\t\t\t\t\tvar event = document.createEvent('MouseEvents');\n\t\t\t\t\tevent.initMouseEvent('click', true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);\n\t\t\t\t\tlink.dispatchEvent(event);\n\t\t\t\t\tsuccess = true;\n\n\t\t\t\t} catch(ex) {\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error('Download link method with simulated click failed with the following exception:');\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error(ex);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif(!success)\n\t\t\t{\n\t\t\t\t// Fallback to window.location method\n\t\t\t\ttry\n\t\t\t\t{\n\t\t\t\t\t// Prepare a blob URL\n\t\t\t\t\t// Use application/octet-stream when using window.location to force download\n\t\t\t\t\tlet blob = new Blob([item.Data], { type: contentType });\n\t\t\t\t\tlet url = urlCreator.createObjectURL(blob);\n\t\t\t\t\twindow.location = url;\n\t\t\t\t\tsuccess = true;\n\t\t\t\t} catch(ex) {\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error('Download link method with window.location failed with the following exception:');\n\t\t\t\t\t//eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error(ex);\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\tif(!success)\n\t{\n\t\t// Fallback to window.open method\n\t\talert('Error downloading document!');\n\t}\n}\n\n/* eslint-disable */\n$('a[data-trigger]').on('click', function (e) {\n\tif (typeof gtag !== 'undefined'){\n\t\te.preventDefault();\n\t\tvar label = $(this).data('trigger');\n \tvar linkUrl = $(this).attr('href');\n\t\tvar newWindow = ($(this).attr('target') && (($(this).attr('target') == 'blank') || ($(this).attr('target') == '_blank'))) ? true : false;\n\t\tgtag('event', 'click', {'event_category': label, 'event_label': linkUrl, 'transport_type': 'beacon', 'event_callback': function(){\n\t\t\tif (newWindow)\n\t\t\t{\n\t\t\t\twindow.open(linkUrl, '_blank');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\twindow.location = linkUrl;\n\t\t\t}\n\t\t}});\n\t}\n});\n/* eslint-enable */\n\n$(document).ready(function() {\n\tlet context = JSON.parse($('#__ClientContext').val());\n\t$('a').each(function() {\n\t\tvar link = $(this).attr('href');\n\t\tif (link && ( ( link.indexOf('http') === 0 ) || ( link.indexOf( '/' ) === 0 ) ) ){\n\t\t\tlink = link.replace(/\\[([^\\]]+)]/g, filterQuerystring);\n\t\t\t$(this).attr('href', link);\n\t\t}\n\t});\n\n\t$('div[data-alert]').each(function(){\n\t\tvar that = this;\n\t\tvar alertData = $(that).data('alert');\n\t\t//eslint-disable-next-line quotes\n\t\tvar alertParams = JSON.parse(alertData.replace(/\\\\'/g, '\"'));\n\t\tif (alertParams && alertParams.hasOwnProperty('rule')) {\n\t\t\tvar ruleValue = filterQuerystring('', alertParams.rule.key, '', '');\n\t\t\tif (ruleValue !== null && alertParams.rule.value.toLowerCase() === ruleValue.toLowerCase()) {\n\t\t\t\tRequest.post(context.baseUrl + alertUrl)\n\t\t\t\t\t.use((req) => {\n\t\t\t\t\t\treq.header.contentType = 'application/json';\n\t\t\t\t\t\treq.header.RequestVerificationToken = $(\n\t\t\t\t\t\t\t'#__RequestVerificationToken'\n\t\t\t\t\t\t).val();\n\t\t\t\t\t\treturn req;\n\t\t\t\t\t})\n\t\t\t\t\t.send({\n\t\t\t\t\t\t'$type':\n\t\t\t\t\t\t\t'Asi.Soa.Communications.DataContracts.NotificationSetRequest, Asi.Contracts',\n\t\t\t\t\t\t'EntityTypeName': 'NotificationSet',\n\t\t\t\t\t\t'OperationName': 'NotificationSetRequest',\n\t\t\t\t\t\t'Operation': {\n\t\t\t\t\t\t\t'$type':\n\t\t\t\t\t\t\t\t'Asi.Soa.Communications.DataContracts.NotificationSetOperationData, Asi.Contracts',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'NotificationSetId': alertParams.Id,\n\t\t\t\t\t\t'PartyId': context.selectedPartyId,\n\t\t\t\t\t\t'ParametersString': window.location.search,\n\t\t\t\t\t})\n\t\t\t\t\t.then((res) => {\n\t\t\t\t\t\tif (res && res.body) {\n\t\t\t\t\t\t\t$(that)\n\t\t\t\t\t\t\t\t.empty()\n\t\t\t\t\t\t\t\t.html(res.body)\n\t\t\t\t\t\t\t\t.removeClass('hide')\n\t\t\t\t\t\t\t\t.show();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t});\n});\n\nfunction filterQuerystring(match, p1, offset, s) {\n\tlet href = window.location.href;\n\tlet reg = new RegExp('[?&]' + p1 + '=([^&#]*)', 'i');\n\tlet string = reg.exec(href);\n\treturn string ? string[1] : null;\n}\n\n\n// WEBPACK FOOTER //\n// ./theme_components/js/global-scripts.js","module.exports = Modernizr;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"Modernizr\"\n// module id = 62\n// module chunks = 2","/**\n * skip-link-focus-fix.js\n *\n * Helps with accessibility for keyboard only users.\n *\n * Learn more: https://git.io/vWdr2\n */\n(function() {\n\tlet is_webkit \t= navigator.userAgent.toLowerCase().indexOf( 'webkit' ) > -1;\n\tlet\tis_opera \t= navigator.userAgent.toLowerCase().indexOf( 'opera' ) > -1;\n\tlet\tis_ie \t\t= navigator.userAgent.toLowerCase().indexOf( 'msie' ) > -1;\n\n\tif ( ( is_webkit || is_opera || is_ie ) && document.getElementById && window.addEventListener ) {\n\t\twindow.addEventListener( 'hashchange', function() {\n\t\t\tvar id = location.hash.substring( 1 ),\n\t\t\t\telement;\n\n\t\t\tif ( ! ( /^[A-z0-9_-]+$/.test( id ) ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement = document.getElementById( id );\n\n\t\t\tif ( element ) {\n\t\t\t\tif ( ! ( /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) ) ) {\n\t\t\t\t\telement.tabIndex = -1;\n\t\t\t\t}\n\n\t\t\t\telement.focus();\n\t\t\t}\n\t\t}, false );\n\t}\n})();\n\n\n\n// WEBPACK FOOTER //\n// ./theme_components/js/modules/_skip-link-focus-fix.js","import $ from 'jquery';\nimport 'superfish';\nimport { jumplinks } from './_utilities';\n\n/**\n * Inner page sidebar navigation script.\n */\n$(document).ready(function(){\n\t// Initialize Superfish menu\n\tjQuery('#main_menu menu').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0,\n\t});\n\n\t// Add 'current' class to current page anchor\n\t$('#main_menu a').each((item, object) => {\n\t\t$(object)[0].pathname === location.pathname &&\n\t\t$(object)[0].hash === '' ? $(object).addClass('current') : '';\n\t});\n});\n\njumplinks('#main_menu');\n\n// Member Menu Unrestricted\n\n$(document).ready(function(){\n\t// Initialize Superfish menu\n\tjQuery('#user_menu ul').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0,\n\t});\n\n\t// Add 'current' class to current page anchor\n\t$('#user_menu a').each((item, object) => {\n\t\t$(object)[0].pathname === location.pathname &&\n\t\t$(object)[0].hash === '' ? $(object).addClass('current') : '';\n\t});\n});\n\njumplinks('#user_menu');\n\n// Member Menu Claims Management\n\n$(document).ready(function(){\n\t// Initialize Superfish menu\n\tjQuery('#claims_menu ul').superfish({\n\t\tdelay: 300,\n\t\tspeed: 0,\n\t\tspeedOut: 0,\n\t});\n\n\t// Add 'current' class to current page anchor\n\t$('#claims_menu a').each((item, object) => {\n\t\t$(object)[0].pathname === location.pathname &&\n\t\t$(object)[0].hash === '' ? $(object).addClass('current') : '';\n\t});\n});\n\njumplinks('#claims_menu');\n\n/*************** Submenu ***************/\njumplinks('#submenu');\n\n/*************** Mobile Menu ***************/\nconst main_menu = $('.main-menu menu').clone().html();\nconst mobile_menu_overlay = '
';\nconst mobile_menu_modal = `
${mobile_menu_overlay}`;\n\n$('body').prepend(mobile_menu_modal);\n\nconst mobile_menu_generated = '#mobile_menu_generated';\n\njumplinks(mobile_menu_generated);\n\n$(mobile_menu_generated).find('a').siblings('ul').each((index, element) => {\n\t$(element).before('SubMenu Toggle');\n});\n\n$(mobile_menu_generated).find('.toggle').on('click', function(event) {\n\tevent.preventDefault();\n\n\t$(this).siblings('ul').slideToggle();\n});\n\n$('#mobile_menu_toggle').on('click', function(event) {\n\tevent.preventDefault();\n\n\t$(this).toggleClass('is-active');\n\t$('#mobile_menu_overlay').toggleClass('off');\n\t$(mobile_menu_generated).toggleClass('off');\n});\n\n\n\n// WEBPACK FOOTER //\n// ./theme_components/js/modules/_menus.js","/*\n * jQuery Superfish Menu Plugin - v1.7.10\n * Copyright (c) 2018 Joel Birch\n *\n * Dual licensed under the MIT and GPL licenses:\n *\thttp://www.opensource.org/licenses/mit-license.php\n *\thttp://www.gnu.org/licenses/gpl.html\n */\n\n;(function ($, w) {\n\t\"use strict\";\n\n\tvar methods = (function () {\n\t\t// private properties and methods go here\n\t\tvar c = {\n\t\t\t\tbcClass: 'sf-breadcrumb',\n\t\t\t\tmenuClass: 'sf-js-enabled',\n\t\t\t\tanchorClass: 'sf-with-ul',\n\t\t\t\tmenuArrowClass: 'sf-arrows'\n\t\t\t},\n\t\t\tios = (function () {\n\t\t\t\tvar ios = /^(?![\\w\\W]*Windows Phone)[\\w\\W]*(iPhone|iPad|iPod)/i.test(navigator.userAgent);\n\t\t\t\tif (ios) {\n\t\t\t\t\t// tap anywhere on iOS to unfocus a submenu\n\t\t\t\t\t$('html').css('cursor', 'pointer').on('click', $.noop);\n\t\t\t\t}\n\t\t\t\treturn ios;\n\t\t\t})(),\n\t\t\twp7 = (function () {\n\t\t\t\tvar style = document.documentElement.style;\n\t\t\t\treturn ('behavior' in style && 'fill' in style && /iemobile/i.test(navigator.userAgent));\n\t\t\t})(),\n\t\t\tunprefixedPointerEvents = (function () {\n\t\t\t\treturn (!!w.PointerEvent);\n\t\t\t})(),\n\t\t\ttoggleMenuClasses = function ($menu, o, add) {\n\t\t\t\tvar classes = c.menuClass,\n\t\t\t\t\tmethod;\n\t\t\t\tif (o.cssArrows) {\n\t\t\t\t\tclasses += ' ' + c.menuArrowClass;\n\t\t\t\t}\n\t\t\t\tmethod = (add) ? 'addClass' : 'removeClass';\n\t\t\t\t$menu[method](classes);\n\t\t\t},\n\t\t\tsetPathToCurrent = function ($menu, o) {\n\t\t\t\treturn $menu.find('li.' + o.pathClass).slice(0, o.pathLevels)\n\t\t\t\t\t.addClass(o.hoverClass + ' ' + c.bcClass)\n\t\t\t\t\t\t.filter(function () {\n\t\t\t\t\t\t\treturn ($(this).children(o.popUpSelector).hide().show().length);\n\t\t\t\t\t\t}).removeClass(o.pathClass);\n\t\t\t},\n\t\t\ttoggleAnchorClass = function ($li, add) {\n\t\t\t\tvar method = (add) ? 'addClass' : 'removeClass';\n\t\t\t\t$li.children('a')[method](c.anchorClass);\n\t\t\t},\n\t\t\ttoggleTouchAction = function ($menu) {\n\t\t\t\tvar msTouchAction = $menu.css('ms-touch-action');\n\t\t\t\tvar touchAction = $menu.css('touch-action');\n\t\t\t\ttouchAction = touchAction || msTouchAction;\n\t\t\t\ttouchAction = (touchAction === 'pan-y') ? 'auto' : 'pan-y';\n\t\t\t\t$menu.css({\n\t\t\t\t\t'ms-touch-action': touchAction,\n\t\t\t\t\t'touch-action': touchAction\n\t\t\t\t});\n\t\t\t},\n\t\t\tgetMenu = function ($el) {\n\t\t\t\treturn $el.closest('.' + c.menuClass);\n\t\t\t},\n\t\t\tgetOptions = function ($el) {\n\t\t\t\treturn getMenu($el).data('sfOptions');\n\t\t\t},\n\t\t\tover = function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this);\n\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t$this.siblings().superfish('hide').end().superfish('show');\n\t\t\t},\n\t\t\tclose = function (o) {\n\t\t\t\to.retainPath = ($.inArray(this[0], o.$path) > -1);\n\t\t\t\tthis.superfish('hide');\n\n\t\t\t\tif (!this.parents('.' + o.hoverClass).length) {\n\t\t\t\t\to.onIdle.call(getMenu(this));\n\t\t\t\t\tif (o.$path.length) {\n\t\t\t\t\t\t$.proxy(over, o.$path)();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tout = function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this);\n\t\t\t\tif (ios) {\n\t\t\t\t\t$.proxy(close, $this, o)();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t\to.sfTimer = setTimeout($.proxy(close, $this, o), o.delay);\n\t\t\t\t}\n\t\t\t},\n\t\t\ttouchHandler = function (e) {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t\to = getOptions($this),\n\t\t\t\t\t$ul = $this.siblings(e.data.popUpSelector);\n\n\t\t\t\tif (o.onHandleTouch.call($ul) === false) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t\tif ($ul.length > 0 && $ul.is(':hidden')) {\n\t\t\t\t\t$this.one('click.superfish', false);\n\t\t\t\t\tif (e.type === 'MSPointerDown' || e.type === 'pointerdown') {\n\t\t\t\t\t\t$this.trigger('focus');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$.proxy(over, $this.parent('li'))();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tapplyHandlers = function ($menu, o) {\n\t\t\t\tvar targets = 'li:has(' + o.popUpSelector + ')';\n\t\t\t\tif ($.fn.hoverIntent && !o.disableHI) {\n\t\t\t\t\t$menu.hoverIntent(over, out, targets);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t$menu\n\t\t\t\t\t\t.on('mouseenter.superfish', targets, over)\n\t\t\t\t\t\t.on('mouseleave.superfish', targets, out);\n\t\t\t\t}\n\t\t\t\tvar touchevent = 'MSPointerDown.superfish';\n\t\t\t\tif (unprefixedPointerEvents) {\n\t\t\t\t\ttouchevent = 'pointerdown.superfish';\n\t\t\t\t}\n\t\t\t\tif (!ios) {\n\t\t\t\t\ttouchevent += ' touchend.superfish';\n\t\t\t\t}\n\t\t\t\tif (wp7) {\n\t\t\t\t\ttouchevent += ' mousedown.superfish';\n\t\t\t\t}\n\t\t\t\t$menu\n\t\t\t\t\t.on('focusin.superfish', 'li', over)\n\t\t\t\t\t.on('focusout.superfish', 'li', out)\n\t\t\t\t\t.on(touchevent, 'a', o, touchHandler);\n\t\t\t};\n\n\t\treturn {\n\t\t\t// public methods\n\t\t\thide: function (instant) {\n\t\t\t\tif (this.length) {\n\t\t\t\t\tvar $this = this,\n\t\t\t\t\t\to = getOptions($this);\n\t\t\t\t\tif (!o) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\t\t\t\t\tvar not = (o.retainPath === true) ? o.$path : '',\n\t\t\t\t\t\t$ul = $this.find('li.' + o.hoverClass).add(this).not(not).removeClass(o.hoverClass).children(o.popUpSelector),\n\t\t\t\t\t\tspeed = o.speedOut;\n\n\t\t\t\t\tif (instant) {\n\t\t\t\t\t\t$ul.show();\n\t\t\t\t\t\tspeed = 0;\n\t\t\t\t\t}\n\t\t\t\t\to.retainPath = false;\n\n\t\t\t\t\tif (o.onBeforeHide.call($ul) === false) {\n\t\t\t\t\t\treturn this;\n\t\t\t\t\t}\n\n\t\t\t\t\t$ul.stop(true, true).animate(o.animationOut, speed, function () {\n\t\t\t\t\t\tvar $this = $(this);\n\t\t\t\t\t\to.onHide.call($this);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tshow: function () {\n\t\t\t\tvar o = getOptions(this);\n\t\t\t\tif (!o) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t\tvar $this = this.addClass(o.hoverClass),\n\t\t\t\t\t$ul = $this.children(o.popUpSelector);\n\n\t\t\t\tif (o.onBeforeShow.call($ul) === false) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t\t$ul.stop(true, true).animate(o.animation, o.speed, function () {\n\t\t\t\t\to.onShow.call($ul);\n\t\t\t\t});\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tdestroy: function () {\n\t\t\t\treturn this.each(function () {\n\t\t\t\t\tvar $this = $(this),\n\t\t\t\t\t\to = $this.data('sfOptions'),\n\t\t\t\t\t\t$hasPopUp;\n\t\t\t\t\tif (!o) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\t$hasPopUp = $this.find(o.popUpSelector).parent('li');\n\t\t\t\t\tclearTimeout(o.sfTimer);\n\t\t\t\t\ttoggleMenuClasses($this, o);\n\t\t\t\t\ttoggleAnchorClass($hasPopUp);\n\t\t\t\t\ttoggleTouchAction($this);\n\t\t\t\t\t// remove event handlers\n\t\t\t\t\t$this.off('.superfish').off('.hoverIntent');\n\t\t\t\t\t// clear animation's inline display style\n\t\t\t\t\t$hasPopUp.children(o.popUpSelector).attr('style', function (i, style) {\n\t\t\t\t\t\tif (typeof style !== 'undefined') {\n\t\t\t\t\t\t\treturn style.replace(/display[^;]+;?/g, '');\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\t// reset 'current' path classes\n\t\t\t\t\to.$path.removeClass(o.hoverClass + ' ' + c.bcClass).addClass(o.pathClass);\n\t\t\t\t\t$this.find('.' + o.hoverClass).removeClass(o.hoverClass);\n\t\t\t\t\to.onDestroy.call($this);\n\t\t\t\t\t$this.removeData('sfOptions');\n\t\t\t\t});\n\t\t\t},\n\t\t\tinit: function (op) {\n\t\t\t\treturn this.each(function () {\n\t\t\t\t\tvar $this = $(this);\n\t\t\t\t\tif ($this.data('sfOptions')) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tvar o = $.extend({}, $.fn.superfish.defaults, op),\n\t\t\t\t\t\t$hasPopUp = $this.find(o.popUpSelector).parent('li');\n\t\t\t\t\to.$path = setPathToCurrent($this, o);\n\n\t\t\t\t\t$this.data('sfOptions', o);\n\n\t\t\t\t\ttoggleMenuClasses($this, o, true);\n\t\t\t\t\ttoggleAnchorClass($hasPopUp, true);\n\t\t\t\t\ttoggleTouchAction($this);\n\t\t\t\t\tapplyHandlers($this, o);\n\n\t\t\t\t\t$hasPopUp.not('.' + c.bcClass).superfish('hide', true);\n\n\t\t\t\t\to.onInit.call(this);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t})();\n\n\t$.fn.superfish = function (method, args) {\n\t\tif (methods[method]) {\n\t\t\treturn methods[method].apply(this, Array.prototype.slice.call(arguments, 1));\n\t\t}\n\t\telse if (typeof method === 'object' || ! method) {\n\t\t\treturn methods.init.apply(this, arguments);\n\t\t}\n\t\telse {\n\t\t\treturn $.error('Method ' + method + ' does not exist on jQuery.fn.superfish');\n\t\t}\n\t};\n\n\t$.fn.superfish.defaults = {\n\t\tpopUpSelector: 'ul,.sf-mega', // within menu context\n\t\thoverClass: 'sfHover',\n\t\tpathClass: 'overrideThisToUse',\n\t\tpathLevels: 1,\n\t\tdelay: 800,\n\t\tanimation: {opacity: 'show'},\n\t\tanimationOut: {opacity: 'hide'},\n\t\tspeed: 'normal',\n\t\tspeedOut: 'fast',\n\t\tcssArrows: true,\n\t\tdisableHI: false,\n\t\tonInit: $.noop,\n\t\tonBeforeShow: $.noop,\n\t\tonShow: $.noop,\n\t\tonBeforeHide: $.noop,\n\t\tonHide: $.noop,\n\t\tonIdle: $.noop,\n\t\tonDestroy: $.noop,\n\t\tonHandleTouch: $.noop\n\t};\n\n})(jQuery, window);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superfish/dist/js/superfish.js\n// module id = 65\n// module chunks = 2","/**\n* jquery-match-height 0.7.2 by @liabru\n* http://brm.io/jquery-match-height/\n* License: MIT\n*/\n\n;(function(factory) { // eslint-disable-line no-extra-semi\n 'use strict';\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(['jquery'], factory);\n } else if (typeof module !== 'undefined' && module.exports) {\n // CommonJS\n module.exports = factory(require('jquery'));\n } else {\n // Global\n factory(jQuery);\n }\n})(function($) {\n /*\n * internal\n */\n\n var _previousResizeWidth = -1,\n _updateTimeout = -1;\n\n /*\n * _parse\n * value parse utility function\n */\n\n var _parse = function(value) {\n // parse value and convert NaN to 0\n return parseFloat(value) || 0;\n };\n\n /*\n * _rows\n * utility function returns array of jQuery selections representing each row\n * (as displayed after float wrapping applied by browser)\n */\n\n var _rows = function(elements) {\n var tolerance = 1,\n $elements = $(elements),\n lastTop = null,\n rows = [];\n\n // group elements by their top position\n $elements.each(function(){\n var $that = $(this),\n top = $that.offset().top - _parse($that.css('margin-top')),\n lastRow = rows.length > 0 ? rows[rows.length - 1] : null;\n\n if (lastRow === null) {\n // first item on the row, so just push it\n rows.push($that);\n } else {\n // if the row top is the same, add to the row group\n if (Math.floor(Math.abs(lastTop - top)) <= tolerance) {\n rows[rows.length - 1] = lastRow.add($that);\n } else {\n // otherwise start a new row group\n rows.push($that);\n }\n }\n\n // keep track of the last row top\n lastTop = top;\n });\n\n return rows;\n };\n\n /*\n * _parseOptions\n * handle plugin options\n */\n\n var _parseOptions = function(options) {\n var opts = {\n byRow: true,\n property: 'height',\n target: null,\n remove: false\n };\n\n if (typeof options === 'object') {\n return $.extend(opts, options);\n }\n\n if (typeof options === 'boolean') {\n opts.byRow = options;\n } else if (options === 'remove') {\n opts.remove = true;\n }\n\n return opts;\n };\n\n /*\n * matchHeight\n * plugin definition\n */\n\n var matchHeight = $.fn.matchHeight = function(options) {\n var opts = _parseOptions(options);\n\n // handle remove\n if (opts.remove) {\n var that = this;\n\n // remove fixed height from all selected elements\n this.css(opts.property, '');\n\n // remove selected elements from all groups\n $.each(matchHeight._groups, function(key, group) {\n group.elements = group.elements.not(that);\n });\n\n // TODO: cleanup empty groups\n\n return this;\n }\n\n if (this.length <= 1 && !opts.target) {\n return this;\n }\n\n // keep track of this group so we can re-apply later on load and resize events\n matchHeight._groups.push({\n elements: this,\n options: opts\n });\n\n // match each element's height to the tallest element in the selection\n matchHeight._apply(this, opts);\n\n return this;\n };\n\n /*\n * plugin global options\n */\n\n matchHeight.version = '0.7.2';\n matchHeight._groups = [];\n matchHeight._throttle = 80;\n matchHeight._maintainScroll = false;\n matchHeight._beforeUpdate = null;\n matchHeight._afterUpdate = null;\n matchHeight._rows = _rows;\n matchHeight._parse = _parse;\n matchHeight._parseOptions = _parseOptions;\n\n /*\n * matchHeight._apply\n * apply matchHeight to given elements\n */\n\n matchHeight._apply = function(elements, options) {\n var opts = _parseOptions(options),\n $elements = $(elements),\n rows = [$elements];\n\n // take note of scroll position\n var scrollTop = $(window).scrollTop(),\n htmlHeight = $('html').outerHeight(true);\n\n // get hidden parents\n var $hiddenParents = $elements.parents().filter(':hidden');\n\n // cache the original inline style\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.data('style-cache', $that.attr('style'));\n });\n\n // temporarily must force hidden parents visible\n $hiddenParents.css('display', 'block');\n\n // get rows if using byRow, otherwise assume one row\n if (opts.byRow && !opts.target) {\n\n // must first force an arbitrary equal height so floating elements break evenly\n $elements.each(function() {\n var $that = $(this),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // cache the original inline style\n $that.data('style-cache', $that.attr('style'));\n\n $that.css({\n 'display': display,\n 'padding-top': '0',\n 'padding-bottom': '0',\n 'margin-top': '0',\n 'margin-bottom': '0',\n 'border-top-width': '0',\n 'border-bottom-width': '0',\n 'height': '100px',\n 'overflow': 'hidden'\n });\n });\n\n // get the array of rows (based on element top position)\n rows = _rows($elements);\n\n // revert original inline styles\n $elements.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || '');\n });\n }\n\n $.each(rows, function(key, row) {\n var $row = $(row),\n targetHeight = 0;\n\n if (!opts.target) {\n // skip apply to rows with only one item\n if (opts.byRow && $row.length <= 1) {\n $row.css(opts.property, '');\n return;\n }\n\n // iterate the row and find the max height\n $row.each(function(){\n var $that = $(this),\n style = $that.attr('style'),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // ensure we get the correct actual height (and not a previously set height value)\n var css = { 'display': display };\n css[opts.property] = '';\n $that.css(css);\n\n // find the max height (including padding, but not margin)\n if ($that.outerHeight(false) > targetHeight) {\n targetHeight = $that.outerHeight(false);\n }\n\n // revert styles\n if (style) {\n $that.attr('style', style);\n } else {\n $that.css('display', '');\n }\n });\n } else {\n // if target set, use the height of the target element\n targetHeight = opts.target.outerHeight(false);\n }\n\n // iterate the row and apply the height to all elements\n $row.each(function(){\n var $that = $(this),\n verticalPadding = 0;\n\n // don't apply to a target\n if (opts.target && $that.is(opts.target)) {\n return;\n }\n\n // handle padding and border correctly (required when not using border-box)\n if ($that.css('box-sizing') !== 'border-box') {\n verticalPadding += _parse($that.css('border-top-width')) + _parse($that.css('border-bottom-width'));\n verticalPadding += _parse($that.css('padding-top')) + _parse($that.css('padding-bottom'));\n }\n\n // set the height (accounting for padding and border)\n $that.css(opts.property, (targetHeight - verticalPadding) + 'px');\n });\n });\n\n // revert hidden parents\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || null);\n });\n\n // restore scroll position if enabled\n if (matchHeight._maintainScroll) {\n $(window).scrollTop((scrollTop / htmlHeight) * $('html').outerHeight(true));\n }\n\n return this;\n };\n\n /*\n * matchHeight._applyDataApi\n * applies matchHeight to all elements with a data-match-height attribute\n */\n\n matchHeight._applyDataApi = function() {\n var groups = {};\n\n // generate groups by their groupId set by elements using data-match-height\n $('[data-match-height], [data-mh]').each(function() {\n var $this = $(this),\n groupId = $this.attr('data-mh') || $this.attr('data-match-height');\n\n if (groupId in groups) {\n groups[groupId] = groups[groupId].add($this);\n } else {\n groups[groupId] = $this;\n }\n });\n\n // apply matchHeight to each group\n $.each(groups, function() {\n this.matchHeight(true);\n });\n };\n\n /*\n * matchHeight._update\n * updates matchHeight on all current groups with their correct options\n */\n\n var _update = function(event) {\n if (matchHeight._beforeUpdate) {\n matchHeight._beforeUpdate(event, matchHeight._groups);\n }\n\n $.each(matchHeight._groups, function() {\n matchHeight._apply(this.elements, this.options);\n });\n\n if (matchHeight._afterUpdate) {\n matchHeight._afterUpdate(event, matchHeight._groups);\n }\n };\n\n matchHeight._update = function(throttle, event) {\n // prevent update if fired from a resize event\n // where the viewport width hasn't actually changed\n // fixes an event looping bug in IE8\n if (event && event.type === 'resize') {\n var windowWidth = $(window).width();\n if (windowWidth === _previousResizeWidth) {\n return;\n }\n _previousResizeWidth = windowWidth;\n }\n\n // throttle updates\n if (!throttle) {\n _update(event);\n } else if (_updateTimeout === -1) {\n _updateTimeout = setTimeout(function() {\n _update(event);\n _updateTimeout = -1;\n }, matchHeight._throttle);\n }\n };\n\n /*\n * bind events\n */\n\n // apply on DOM ready event\n $(matchHeight._applyDataApi);\n\n // use on or bind where supported\n var on = $.fn.on ? 'on' : 'bind';\n\n // update heights on load and resize events\n $(window)[on]('load', function(event) {\n matchHeight._update(false, event);\n });\n\n // throttled update heights on resize events\n $(window)[on]('resize orientationchange', function(event) {\n matchHeight._update(true, event);\n });\n\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/jquery-match-height/dist/jquery.matchHeight.js\n// module id = 66\n// module chunks = 2","// Robert Penner's easeInOutQuad\n\n// find the rest of his easing functions here: http://robertpenner.com/easing/\n// find them exported for ES6 consumption here: https://github.com/jaxgeller/ez.js\n\nvar easeInOutQuad = function easeInOutQuad(t, b, c, d) {\n t /= d / 2;\n if (t < 1) return c / 2 * t * t + b;\n t--;\n return -c / 2 * (t * (t - 2) - 1) + b;\n};\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar jumper = function jumper() {\n // private variable cache\n // no variables are created during a jump, preventing memory leaks\n\n var element = void 0; // element to scroll to (node)\n\n var start = void 0; // where scroll starts (px)\n var stop = void 0; // where scroll stops (px)\n\n var offset = void 0; // adjustment from the stop position (px)\n var easing = void 0; // easing function (function)\n var a11y = void 0; // accessibility support flag (boolean)\n\n var distance = void 0; // distance of scroll (px)\n var duration = void 0; // scroll duration (ms)\n\n var timeStart = void 0; // time scroll started (ms)\n var timeElapsed = void 0; // time spent scrolling thus far (ms)\n\n var next = void 0; // next scroll position (px)\n\n var callback = void 0; // to call when done scrolling (function)\n\n // scroll position helper\n\n function location() {\n return window.scrollY || window.pageYOffset;\n }\n\n // element offset helper\n\n function top(element) {\n return element.getBoundingClientRect().top + start;\n }\n\n // rAF loop helper\n\n function loop(timeCurrent) {\n // store time scroll started, if not started already\n if (!timeStart) {\n timeStart = timeCurrent;\n }\n\n // determine time spent scrolling so far\n timeElapsed = timeCurrent - timeStart;\n\n // calculate next scroll position\n next = easing(timeElapsed, start, distance, duration);\n\n // scroll to it\n window.scrollTo(0, next);\n\n // check progress\n timeElapsed < duration ? window.requestAnimationFrame(loop) // continue scroll loop\n : done(); // scrolling is done\n }\n\n // scroll finished helper\n\n function done() {\n // account for rAF time rounding inaccuracies\n window.scrollTo(0, start + distance);\n\n // if scrolling to an element, and accessibility is enabled\n if (element && a11y) {\n // add tabindex indicating programmatic focus\n element.setAttribute('tabindex', '-1');\n\n // focus the element\n element.focus();\n }\n\n // if it exists, fire the callback\n if (typeof callback === 'function') {\n callback();\n }\n\n // reset time for next jump\n timeStart = false;\n }\n\n // API\n\n function jump(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n // resolve options, or use defaults\n duration = options.duration || 1000;\n offset = options.offset || 0;\n callback = options.callback; // \"undefined\" is a suitable default, and won't be called\n easing = options.easing || easeInOutQuad;\n a11y = options.a11y || false;\n\n // cache starting position\n start = location();\n\n // resolve target\n switch (typeof target === 'undefined' ? 'undefined' : _typeof(target)) {\n // scroll from current position\n case 'number':\n element = undefined; // no element to scroll to\n a11y = false; // make sure accessibility is off\n stop = start + target;\n break;\n\n // scroll to element (node)\n // bounding rect is relative to the viewport\n case 'object':\n element = target;\n stop = top(element);\n break;\n\n // scroll to element (selector)\n // bounding rect is relative to the viewport\n case 'string':\n element = document.querySelector(target);\n stop = top(element);\n break;\n }\n\n // resolve scroll distance, accounting for offset\n distance = stop - start + offset;\n\n // resolve duration\n switch (_typeof(options.duration)) {\n // number in ms\n case 'number':\n duration = options.duration;\n break;\n\n // function passed the distance of the scroll\n case 'function':\n duration = options.duration(distance);\n break;\n }\n\n // start the loop\n window.requestAnimationFrame(loop);\n }\n\n // expose only the jump method\n return jump;\n};\n\n// export singleton\n\nvar singleton = jumper();\n\nexport default singleton;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/jump.js/dist/jump.module.js\n// module id = 7\n// module chunks = 0 1 2 3 4","import jump from 'jump.js';\nimport $ from 'jquery';\n\nfunction linkify(text, type) {\n\ttext = text.replace(\n\t\t/((https?\\:\\/\\/)|(www\\.))(\\S+)(\\w{2,4})(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?/gi,\n\t\tfunction(url){\n\t\t\tvar full_url = !url.match('^https?:\\/\\/') ? 'http://' + url : url ;\n\t\t\treturn '' + url + '';\n\t\t}\n\t);\n\tif(type == 'twitter'){\n\t\ttext = text.replace(/(^|\\s)@(\\w+)/g, '$1@$2');\n\t\ttext = text.replace(/(^|\\s)#(\\w+)/g, '$1#$2');\n\t} else if(type == 'facebook'){\n\t\ttext = text.replace(/(^|\\s)#(\\w+)/g, '$1#$2');\n\t}\n\treturn text;\n}\n\nfunction jumplinks(element_id) {\n\t$(element_id).find('a[href*=\"#\"]').each((item, element) => {\n\t\t$(element).on('click', function(event) {\n\t\t\tconst scroolToElement = $(this);\n\n\t\t\tif (scroolToElement[0].pathname === location.pathname) {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tjump(scroolToElement[0].hash);\n\n\t\t\t\t$('#mobile_menu_toggle').removeClass('is-active');\n\t\t\t\t$('#mobile_menu_overlay').addClass('off');\n\t\t\t\t$('#mobile_menu_generated').addClass('off');\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction parseItems(items) {\n\tvar itemArray = new Array();\n\t$.each(items, function (i, item) {\n\t\titemArray.push(parseItem(item));\n\t});\n\treturn JSON.parse(JSON.stringify(itemArray));\n}\n\nfunction parseItem(item) {\n\tvar json_arr = {};\n\t$.each(item.Properties.$values, function (i, node) {\n\t\tvar val = node.Value;\n\t\tif (typeof val === \"object\") val = val.$value;\n\t\tjson_arr[node.Name] = val;\n\t});\n\treturn JSON.parse(JSON.stringify(json_arr));\n}\n\nexport { linkify, jumplinks, parseItems, parseItem };\n\n\n\n// WEBPACK FOOTER //\n// ./theme_components/js/modules/_utilities.js","/**\n * Root reference for iframes.\n */\n\nvar root;\nif (typeof window !== 'undefined') { // Browser window\n root = window;\n} else if (typeof self !== 'undefined') { // Web Worker\n root = self;\n} else { // Other environments\n console.warn(\"Using browser-only version of superagent in non-browser environment\");\n root = this;\n}\n\nvar Emitter = require('component-emitter');\nvar RequestBase = require('./request-base');\nvar isObject = require('./is-object');\nvar ResponseBase = require('./response-base');\nvar Agent = require('./agent-base');\n\n/**\n * Noop.\n */\n\nfunction noop(){};\n\n/**\n * Expose `request`.\n */\n\nvar request = exports = module.exports = function(method, url) {\n // callback\n if ('function' == typeof url) {\n return new exports.Request('GET', method).end(url);\n }\n\n // url first\n if (1 == arguments.length) {\n return new exports.Request('GET', method);\n }\n\n return new exports.Request(method, url);\n}\n\nexports.Request = Request;\n\n/**\n * Determine XHR.\n */\n\nrequest.getXHR = function () {\n if (root.XMLHttpRequest\n && (!root.location || 'file:' != root.location.protocol\n || !root.ActiveXObject)) {\n return new XMLHttpRequest;\n } else {\n try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP.6.0'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP.3.0'); } catch(e) {}\n try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch(e) {}\n }\n throw Error(\"Browser-only version of superagent could not find XHR\");\n};\n\n/**\n * Removes leading and trailing whitespace, added to support IE.\n *\n * @param {String} s\n * @return {String}\n * @api private\n */\n\nvar trim = ''.trim\n ? function(s) { return s.trim(); }\n : function(s) { return s.replace(/(^\\s*|\\s*$)/g, ''); };\n\n/**\n * Serialize the given `obj`.\n *\n * @param {Object} obj\n * @return {String}\n * @api private\n */\n\nfunction serialize(obj) {\n if (!isObject(obj)) return obj;\n var pairs = [];\n for (var key in obj) {\n pushEncodedKeyValuePair(pairs, key, obj[key]);\n }\n return pairs.join('&');\n}\n\n/**\n * Helps 'serialize' with serializing arrays.\n * Mutates the pairs array.\n *\n * @param {Array} pairs\n * @param {String} key\n * @param {Mixed} val\n */\n\nfunction pushEncodedKeyValuePair(pairs, key, val) {\n if (val != null) {\n if (Array.isArray(val)) {\n val.forEach(function(v) {\n pushEncodedKeyValuePair(pairs, key, v);\n });\n } else if (isObject(val)) {\n for(var subkey in val) {\n pushEncodedKeyValuePair(pairs, key + '[' + subkey + ']', val[subkey]);\n }\n } else {\n pairs.push(encodeURIComponent(key)\n + '=' + encodeURIComponent(val));\n }\n } else if (val === null) {\n pairs.push(encodeURIComponent(key));\n }\n}\n\n/**\n * Expose serialization method.\n */\n\nrequest.serializeObject = serialize;\n\n/**\n * Parse the given x-www-form-urlencoded `str`.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nfunction parseString(str) {\n var obj = {};\n var pairs = str.split('&');\n var pair;\n var pos;\n\n for (var i = 0, len = pairs.length; i < len; ++i) {\n pair = pairs[i];\n pos = pair.indexOf('=');\n if (pos == -1) {\n obj[decodeURIComponent(pair)] = '';\n } else {\n obj[decodeURIComponent(pair.slice(0, pos))] =\n decodeURIComponent(pair.slice(pos + 1));\n }\n }\n\n return obj;\n}\n\n/**\n * Expose parser.\n */\n\nrequest.parseString = parseString;\n\n/**\n * Default MIME type map.\n *\n * superagent.types.xml = 'application/xml';\n *\n */\n\nrequest.types = {\n html: 'text/html',\n json: 'application/json',\n xml: 'text/xml',\n urlencoded: 'application/x-www-form-urlencoded',\n 'form': 'application/x-www-form-urlencoded',\n 'form-data': 'application/x-www-form-urlencoded'\n};\n\n/**\n * Default serialization map.\n *\n * superagent.serialize['application/xml'] = function(obj){\n * return 'generated xml here';\n * };\n *\n */\n\nrequest.serialize = {\n 'application/x-www-form-urlencoded': serialize,\n 'application/json': JSON.stringify\n};\n\n/**\n * Default parsers.\n *\n * superagent.parse['application/xml'] = function(str){\n * return { object parsed from str };\n * };\n *\n */\n\nrequest.parse = {\n 'application/x-www-form-urlencoded': parseString,\n 'application/json': JSON.parse\n};\n\n/**\n * Parse the given header `str` into\n * an object containing the mapped fields.\n *\n * @param {String} str\n * @return {Object}\n * @api private\n */\n\nfunction parseHeader(str) {\n var lines = str.split(/\\r?\\n/);\n var fields = {};\n var index;\n var line;\n var field;\n var val;\n\n for (var i = 0, len = lines.length; i < len; ++i) {\n line = lines[i];\n index = line.indexOf(':');\n if (index === -1) { // could be empty line, just skip it\n continue;\n }\n field = line.slice(0, index).toLowerCase();\n val = trim(line.slice(index + 1));\n fields[field] = val;\n }\n\n return fields;\n}\n\n/**\n * Check if `mime` is json or has +json structured syntax suffix.\n *\n * @param {String} mime\n * @return {Boolean}\n * @api private\n */\n\nfunction isJSON(mime) {\n // should match /json or +json\n // but not /json-seq\n return /[\\/+]json($|[^-\\w])/.test(mime);\n}\n\n/**\n * Initialize a new `Response` with the given `xhr`.\n *\n * - set flags (.ok, .error, etc)\n * - parse header\n *\n * Examples:\n *\n * Aliasing `superagent` as `request` is nice:\n *\n * request = superagent;\n *\n * We can use the promise-like API, or pass callbacks:\n *\n * request.get('/').end(function(res){});\n * request.get('/', function(res){});\n *\n * Sending data can be chained:\n *\n * request\n * .post('/user')\n * .send({ name: 'tj' })\n * .end(function(res){});\n *\n * Or passed to `.send()`:\n *\n * request\n * .post('/user')\n * .send({ name: 'tj' }, function(res){});\n *\n * Or passed to `.post()`:\n *\n * request\n * .post('/user', { name: 'tj' })\n * .end(function(res){});\n *\n * Or further reduced to a single call for simple cases:\n *\n * request\n * .post('/user', { name: 'tj' }, function(res){});\n *\n * @param {XMLHTTPRequest} xhr\n * @param {Object} options\n * @api private\n */\n\nfunction Response(req) {\n this.req = req;\n this.xhr = this.req.xhr;\n // responseText is accessible only if responseType is '' or 'text' and on older browsers\n this.text = ((this.req.method !='HEAD' && (this.xhr.responseType === '' || this.xhr.responseType === 'text')) || typeof this.xhr.responseType === 'undefined')\n ? this.xhr.responseText\n : null;\n this.statusText = this.req.xhr.statusText;\n var status = this.xhr.status;\n // handle IE9 bug: http://stackoverflow.com/questions/10046972/msie-returns-status-code-of-1223-for-ajax-request\n if (status === 1223) {\n status = 204;\n }\n this._setStatusProperties(status);\n this.header = this.headers = parseHeader(this.xhr.getAllResponseHeaders());\n // getAllResponseHeaders sometimes falsely returns \"\" for CORS requests, but\n // getResponseHeader still works. so we get content-type even if getting\n // other headers fails.\n this.header['content-type'] = this.xhr.getResponseHeader('content-type');\n this._setHeaderProperties(this.header);\n\n if (null === this.text && req._responseType) {\n this.body = this.xhr.response;\n } else {\n this.body = this.req.method != 'HEAD'\n ? this._parseBody(this.text ? this.text : this.xhr.response)\n : null;\n }\n}\n\nResponseBase(Response.prototype);\n\n/**\n * Parse the given body `str`.\n *\n * Used for auto-parsing of bodies. Parsers\n * are defined on the `superagent.parse` object.\n *\n * @param {String} str\n * @return {Mixed}\n * @api private\n */\n\nResponse.prototype._parseBody = function(str) {\n var parse = request.parse[this.type];\n if (this.req._parser) {\n return this.req._parser(this, str);\n }\n if (!parse && isJSON(this.type)) {\n parse = request.parse['application/json'];\n }\n return parse && str && (str.length || str instanceof Object)\n ? parse(str)\n : null;\n};\n\n/**\n * Return an `Error` representative of this response.\n *\n * @return {Error}\n * @api public\n */\n\nResponse.prototype.toError = function(){\n var req = this.req;\n var method = req.method;\n var url = req.url;\n\n var msg = 'cannot ' + method + ' ' + url + ' (' + this.status + ')';\n var err = new Error(msg);\n err.status = this.status;\n err.method = method;\n err.url = url;\n\n return err;\n};\n\n/**\n * Expose `Response`.\n */\n\nrequest.Response = Response;\n\n/**\n * Initialize a new `Request` with the given `method` and `url`.\n *\n * @param {String} method\n * @param {String} url\n * @api public\n */\n\nfunction Request(method, url) {\n var self = this;\n this._query = this._query || [];\n this.method = method;\n this.url = url;\n this.header = {}; // preserves header name case\n this._header = {}; // coerces header names to lowercase\n this.on('end', function(){\n var err = null;\n var res = null;\n\n try {\n res = new Response(self);\n } catch(e) {\n err = new Error('Parser is unable to parse the response');\n err.parse = true;\n err.original = e;\n // issue #675: return the raw response if the response parsing fails\n if (self.xhr) {\n // ie9 doesn't have 'response' property\n err.rawResponse = typeof self.xhr.responseType == 'undefined' ? self.xhr.responseText : self.xhr.response;\n // issue #876: return the http status code if the response parsing fails\n err.status = self.xhr.status ? self.xhr.status : null;\n err.statusCode = err.status; // backwards-compat only\n } else {\n err.rawResponse = null;\n err.status = null;\n }\n\n return self.callback(err);\n }\n\n self.emit('response', res);\n\n var new_err;\n try {\n if (!self._isResponseOK(res)) {\n new_err = new Error(res.statusText || 'Unsuccessful HTTP response');\n }\n } catch(custom_err) {\n new_err = custom_err; // ok() callback can throw\n }\n\n // #1000 don't catch errors from the callback to avoid double calling it\n if (new_err) {\n new_err.original = err;\n new_err.response = res;\n new_err.status = res.status;\n self.callback(new_err, res);\n } else {\n self.callback(null, res);\n }\n });\n}\n\n/**\n * Mixin `Emitter` and `RequestBase`.\n */\n\nEmitter(Request.prototype);\nRequestBase(Request.prototype);\n\n/**\n * Set Content-Type to `type`, mapping values from `request.types`.\n *\n * Examples:\n *\n * superagent.types.xml = 'application/xml';\n *\n * request.post('/')\n * .type('xml')\n * .send(xmlstring)\n * .end(callback);\n *\n * request.post('/')\n * .type('application/xml')\n * .send(xmlstring)\n * .end(callback);\n *\n * @param {String} type\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.type = function(type){\n this.set('Content-Type', request.types[type] || type);\n return this;\n};\n\n/**\n * Set Accept to `type`, mapping values from `request.types`.\n *\n * Examples:\n *\n * superagent.types.json = 'application/json';\n *\n * request.get('/agent')\n * .accept('json')\n * .end(callback);\n *\n * request.get('/agent')\n * .accept('application/json')\n * .end(callback);\n *\n * @param {String} accept\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.accept = function(type){\n this.set('Accept', request.types[type] || type);\n return this;\n};\n\n/**\n * Set Authorization field value with `user` and `pass`.\n *\n * @param {String} user\n * @param {String} [pass] optional in case of using 'bearer' as type\n * @param {Object} options with 'type' property 'auto', 'basic' or 'bearer' (default 'basic')\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.auth = function(user, pass, options){\n if (1 === arguments.length) pass = '';\n if (typeof pass === 'object' && pass !== null) { // pass is optional and can be replaced with options\n options = pass;\n pass = '';\n }\n if (!options) {\n options = {\n type: 'function' === typeof btoa ? 'basic' : 'auto',\n };\n }\n\n var encoder = function(string) {\n if ('function' === typeof btoa) {\n return btoa(string);\n }\n throw new Error('Cannot use basic auth, btoa is not a function');\n };\n\n return this._auth(user, pass, options, encoder);\n};\n\n/**\n * Add query-string `val`.\n *\n * Examples:\n *\n * request.get('/shoes')\n * .query('size=10')\n * .query({ color: 'blue' })\n *\n * @param {Object|String} val\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.query = function(val){\n if ('string' != typeof val) val = serialize(val);\n if (val) this._query.push(val);\n return this;\n};\n\n/**\n * Queue the given `file` as an attachment to the specified `field`,\n * with optional `options` (or filename).\n *\n * ``` js\n * request.post('/upload')\n * .attach('content', new Blob(['hey!'], { type: \"text/html\"}))\n * .end(callback);\n * ```\n *\n * @param {String} field\n * @param {Blob|File} file\n * @param {String|Object} options\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.attach = function(field, file, options){\n if (file) {\n if (this._data) {\n throw Error(\"superagent can't mix .send() and .attach()\");\n }\n\n this._getFormData().append(field, file, options || file.name);\n }\n return this;\n};\n\nRequest.prototype._getFormData = function(){\n if (!this._formData) {\n this._formData = new root.FormData();\n }\n return this._formData;\n};\n\n/**\n * Invoke the callback with `err` and `res`\n * and handle arity check.\n *\n * @param {Error} err\n * @param {Response} res\n * @api private\n */\n\nRequest.prototype.callback = function(err, res){\n if (this._shouldRetry(err, res)) {\n return this._retry();\n }\n\n var fn = this._callback;\n this.clearTimeout();\n\n if (err) {\n if (this._maxRetries) err.retries = this._retries - 1;\n this.emit('error', err);\n }\n\n fn(err, res);\n};\n\n/**\n * Invoke callback with x-domain error.\n *\n * @api private\n */\n\nRequest.prototype.crossDomainError = function(){\n var err = new Error('Request has been terminated\\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.');\n err.crossDomain = true;\n\n err.status = this.status;\n err.method = this.method;\n err.url = this.url;\n\n this.callback(err);\n};\n\n// This only warns, because the request is still likely to work\nRequest.prototype.buffer = Request.prototype.ca = Request.prototype.agent = function(){\n console.warn(\"This is not supported in browser version of superagent\");\n return this;\n};\n\n// This throws, because it can't send/receive data as expected\nRequest.prototype.pipe = Request.prototype.write = function(){\n throw Error(\"Streaming is not supported in browser version of superagent\");\n};\n\n/**\n * Check if `obj` is a host object,\n * we don't want to serialize these :)\n *\n * @param {Object} obj\n * @return {Boolean}\n * @api private\n */\nRequest.prototype._isHost = function _isHost(obj) {\n // Native objects stringify to [object File], [object Blob], [object FormData], etc.\n return obj && 'object' === typeof obj && !Array.isArray(obj) && Object.prototype.toString.call(obj) !== '[object Object]';\n}\n\n/**\n * Initiate request, invoking callback `fn(res)`\n * with an instanceof `Response`.\n *\n * @param {Function} fn\n * @return {Request} for chaining\n * @api public\n */\n\nRequest.prototype.end = function(fn){\n if (this._endCalled) {\n console.warn(\"Warning: .end() was called twice. This is not supported in superagent\");\n }\n this._endCalled = true;\n\n // store callback\n this._callback = fn || noop;\n\n // querystring\n this._finalizeQueryString();\n\n return this._end();\n};\n\nRequest.prototype._end = function() {\n var self = this;\n var xhr = (this.xhr = request.getXHR());\n var data = this._formData || this._data;\n\n this._setTimeouts();\n\n // state change\n xhr.onreadystatechange = function(){\n var readyState = xhr.readyState;\n if (readyState >= 2 && self._responseTimeoutTimer) {\n clearTimeout(self._responseTimeoutTimer);\n }\n if (4 != readyState) {\n return;\n }\n\n // In IE9, reads to any property (e.g. status) off of an aborted XHR will\n // result in the error \"Could not complete the operation due to error c00c023f\"\n var status;\n try { status = xhr.status } catch(e) { status = 0; }\n\n if (!status) {\n if (self.timedout || self._aborted) return;\n return self.crossDomainError();\n }\n self.emit('end');\n };\n\n // progress\n var handleProgress = function(direction, e) {\n if (e.total > 0) {\n e.percent = e.loaded / e.total * 100;\n }\n e.direction = direction;\n self.emit('progress', e);\n };\n if (this.hasListeners('progress')) {\n try {\n xhr.onprogress = handleProgress.bind(null, 'download');\n if (xhr.upload) {\n xhr.upload.onprogress = handleProgress.bind(null, 'upload');\n }\n } catch(e) {\n // Accessing xhr.upload fails in IE from a web worker, so just pretend it doesn't exist.\n // Reported here:\n // https://connect.microsoft.com/IE/feedback/details/837245/xmlhttprequest-upload-throws-invalid-argument-when-used-from-web-worker-context\n }\n }\n\n // initiate request\n try {\n if (this.username && this.password) {\n xhr.open(this.method, this.url, true, this.username, this.password);\n } else {\n xhr.open(this.method, this.url, true);\n }\n } catch (err) {\n // see #1149\n return this.callback(err);\n }\n\n // CORS\n if (this._withCredentials) xhr.withCredentials = true;\n\n // body\n if (!this._formData && 'GET' != this.method && 'HEAD' != this.method && 'string' != typeof data && !this._isHost(data)) {\n // serialize stuff\n var contentType = this._header['content-type'];\n var serialize = this._serializer || request.serialize[contentType ? contentType.split(';')[0] : ''];\n if (!serialize && isJSON(contentType)) {\n serialize = request.serialize['application/json'];\n }\n if (serialize) data = serialize(data);\n }\n\n // set header fields\n for (var field in this.header) {\n if (null == this.header[field]) continue;\n\n if (this.header.hasOwnProperty(field))\n xhr.setRequestHeader(field, this.header[field]);\n }\n\n if (this._responseType) {\n xhr.responseType = this._responseType;\n }\n\n // send stuff\n this.emit('request', this);\n\n // IE11 xhr.send(undefined) sends 'undefined' string as POST payload (instead of nothing)\n // We need null here if data is undefined\n xhr.send(typeof data !== 'undefined' ? data : null);\n return this;\n};\n\nrequest.agent = function() {\n return new Agent();\n};\n\n[\"GET\", \"POST\", \"OPTIONS\", \"PATCH\", \"PUT\", \"DELETE\"].forEach(function(method) {\n Agent.prototype[method.toLowerCase()] = function(url, fn) {\n var req = new request.Request(method, url);\n this._setDefaults(req);\n if (fn) {\n req.end(fn);\n }\n return req;\n };\n});\n\nAgent.prototype.del = Agent.prototype['delete'];\n\n/**\n * GET `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.get = function(url, data, fn) {\n var req = request('GET', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.query(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * HEAD `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.head = function(url, data, fn) {\n var req = request('HEAD', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.query(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * OPTIONS query to `url` with optional callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.options = function(url, data, fn) {\n var req = request('OPTIONS', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * DELETE `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nfunction del(url, data, fn) {\n var req = request('DELETE', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n}\n\nrequest['del'] = del;\nrequest['delete'] = del;\n\n/**\n * PATCH `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.patch = function(url, data, fn) {\n var req = request('PATCH', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * POST `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed} [data]\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.post = function(url, data, fn) {\n var req = request('POST', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n/**\n * PUT `url` with optional `data` and callback `fn(res)`.\n *\n * @param {String} url\n * @param {Mixed|Function} [data] or fn\n * @param {Function} [fn]\n * @return {Request}\n * @api public\n */\n\nrequest.put = function(url, data, fn) {\n var req = request('PUT', url);\n if ('function' == typeof data) (fn = data), (data = null);\n if (data) req.send(data);\n if (fn) req.end(fn);\n return req;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/superagent/lib/client.js\n// module id = 9\n// module chunks = 0 1 2 3"],"sourceRoot":""}