{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/views/Main/Home.vue?43e6","webpack:///./src/utils/loadingHelper.ts","webpack:///./src/store.ts","webpack:///./src/components/Navbar.vue?c5fd","webpack:///./src/views/Main/MainLayout.vue?6e59","webpack:///./src/components/FormSection.vue?0e2b","webpack:///./src/components/Loader.vue?a1b1","webpack:///./src/components/Loader.vue?69aa","webpack:///./src/components/Loader.vue?4ddb","webpack:///./src/components/Loader.vue","webpack:///./src/views/Main/Submission.vue?d1de","webpack:///./src/App.vue?763a","webpack:///./src/views/Main/Home.vue?e095","webpack:///./src/utils/placeUtil.ts","webpack:///./src/utils/validators.ts","webpack:///./src/views/Main/Home.vue?c3ec","webpack:///./src/components/FormSection.vue?8563","webpack:///./src/components/FormSection.vue?1dac","webpack:///./src/components/FormSection.vue?471f","webpack:///./src/components/FormSection.vue","webpack:///./src/components/main/Header.vue?1a90","webpack:///./src/components/main/Header.vue?6d91","webpack:///./src/components/main/Header.vue?9a31","webpack:///./src/components/main/Header.vue","webpack:///./src/components/SelectField.vue?df7a","webpack:///./src/components/SelectField.vue?08a0","webpack:///./src/components/SelectField.vue?76ab","webpack:///./src/components/SelectField.vue","webpack:///./src/components/TextArea.vue?1710","webpack:///./src/components/TextArea.vue?43b4","webpack:///./src/components/TextArea.vue?7c12","webpack:///./src/components/TextArea.vue","webpack:///./src/views/Main/Home.vue?668b","webpack:///./src/views/Main/Home.vue","webpack:///./src/views/Main/MainLayout.vue?3524","webpack:///./src/views/Main/MainLayout.vue?9f9e","webpack:///./src/views/Main/MainLayout.vue?385b","webpack:///./src/views/Main/MainLayout.vue","webpack:///./src/views/Main/ResetPassword.vue?2882","webpack:///./src/views/Main/ResetPassword.vue?a932","webpack:///./src/views/Main/ResetPassword.vue?0318","webpack:///./src/views/Main/ResetPassword.vue","webpack:///./src/views/Main/Submission.vue?6082","webpack:///./src/views/Main/Submission.vue?8fd4","webpack:///./src/views/Main/Submission.vue?fcb4","webpack:///./src/views/Main/Submission.vue","webpack:///./src/router.ts","webpack:///./src/app.constants.ts","webpack:///./src/components/TextArea.vue?aaa4","webpack:///./src/views/Main/ResetPassword.vue?359c","webpack:///./src/Utils.ts","webpack:///./src/components/SelectField.vue?7ca2","webpack:///./src/components/main/Header.vue?f165","webpack:///./src/assets/ufcw-charity-foundation.svg","webpack:///./src/components/TextField.vue?ed34","webpack:///./src/App.vue?b4b1","webpack:///./src/App.vue","webpack:///./src/utils/iconHelper.ts","webpack:///./src/main.ts","webpack:///./src/components/Navbar.vue?62c7","webpack:///./src/components/Navbar.vue?6c59","webpack:///./src/components/Navbar.vue?1bdf","webpack:///./src/components/Navbar.vue","webpack:///./src/components/Loader.vue?dc01","webpack:///./src/assets/ufcw-cf-white.svg","webpack:///./src/utils/authUtils.ts","webpack:///./src/components/TextField.vue?6779","webpack:///./src/components/TextField.vue?f665","webpack:///./src/components/TextField.vue?429b","webpack:///./src/components/TextField.vue"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","MIN_LOADER_TIME","TimeoutError","MinTimer","minTime","this","tasks","waiter","map","arr","onComplete","catch","onError","resolveComplete","jwt","localStorage","getItem","store","state","isAuthenticated","token","setJwt","jwtString","setItem","_updateToken","_updateIsAuthenticated","clearJwt","removeItem","render","_vm","_h","$createElement","_c","_self","staticClass","class","cls","attrs","staticRenderFns","extend","props","required","String","component","_v","_s","userName","formData","personalInfo","firstName","lastName","staticStyle","on","logout","_e","showLoginForm","model","loginFormData","callback","$$v","$set","expression","$event","login","toggleLoginForm","_m","dueDate","directives","rawName","domProps","_q","memberStatus","editing","markSectionEditable","errors","has","regex","ssn","date_format","after","birthDate","ref","address","city","zipCode","homePhone","cellPhone","email","schoolHistory","hover","schoolName","schoolType","graduationYear","_n","persistChanges","cancelEdit","pastSchools","hasLoadedData","_l","school","schoolEdit","editSchool","schoolTypeMap","refInFor","saveSchoolEdit","cancelSchoolEdit","deleteSchool","persistedData","activities","yearsParticipated","toggleAllYearsParticipated","Array","isArray","_i","$$a","$$el","$$c","checked","$$i","concat","pastActivities","activity","activityName","Math","random","activityEdit","editActivity","role","saveActivityEdit","cancelActivityEdit","deleteActivity","employmentHistory","employerName","title","startDate","endDate","pastEmployments","employment","employmentEdit","editEmployment","date_between","maxStartDate","saveEmploymentEdit","cancelEmploymentEdit","deleteEmployment","relatives","relativesRequired","filter","relative","relativeEdit","editRelative","jobTitle","saveRelativeEdit","cancelRelativeEdit","deleteRelative","essayQuestion","split","hasAgreedWithTerms","submitForm","loading","any","prettyErrors","formErrors","submissionError","addressComponents","streetNumber","getByTypes","short_name","route","county","country","postalCode","postalCodeSuffix","types","find","comp","passes","forEach","includes","ActivityYears","validateSSN","test","validateEmail","validateFilled","str","validateDate","date","matchesShape","asDate","Date","isNaN","getTime","validatePassword","pass","phone","isValid","isMobile","validateYear","validateZip","zip","validators","validateCell","validatePhone","validatorComponent","methods","header","subheading","$parent","isEditable","isEditing","$emit","sectionId","btnText","$slots","default","_t","components","Loader","inject","Boolean","readonly","isDisabled","invalid","_b","empty","id","isFocused","isFocusd","$attrs","label","option","disabled","computed","options","focusArea","valid","$_veeValidate","$refs","textarea","focus","beforeMount","personalInfoIsValid","mounted","setLanguage","FormSection","Header","Navbar","SelectField","TextArea","TextField","sort","a","b","ayear","byear","minBirthDate","startOfMonth","format","hasEmptyValue","Utils","hasEmptyKey","hasAllKeys","keys","created","defaults","headers","common","loader","response","status","Unauthorized","toastError","loadDataToForm","start","val","formattedDate","set","res","complete","addressAutocomplete","localInfo","formSubmission","section","makeUneditable","savedData","cloneDeep","$validator","pause","$nextTick","resume","schoolAutocomplete","google","maps","places","Autocomplete","schoolEditInput","input","setFields","addListener","handleSchoolEditPlaceSelection","getPlace","employerAutocomplete","employmentEditInput","handleEmploymentEditPlaceSelection","location","handleEmploymentPlaceSelection","handlePersonalPlaceSelection","util","address_components","getAddress","getCity","getState","parseInt","getPostalCode","handleSchoolPlaceSelection","scholarshipApplication","applicant","application","newPersisted","newFormData","toLowerCase","maskedSsn","year","employers","emp","newHist","number","local","schools","newSchool","memberRelatives","essayResponses","text","loadFormToPersist","schoolHistoryName","employmentAutocomplete","employmentHistoryName","validateAll","fieldData","sorted","newRelative","newPersist","act","highSchool","college","finalizePending","sect","succeeded","hasData","values","some","DEVMODE","validate","timer","scholarshipForm","router","errorMessage","applicantId","form","post","submission","formId","loginResponse","currentApplication","msg","trySetLanguage","HAVE_SET_LANGUAGE","mixins","updated","$el","querySelectorAll","frm","onkeypress","charCode","keyCode","preventDefault","watch","newVal","oldVal","wordLength","password","fields","dirty","resetPassword","loadingReset","hasSentEmail","sendResetEmail","hasComeFromEmail","resetToken","resetEmail","success","toastSuccess","hasSetPassword","passwordHasReset","loadingPasswordReset","payload","req","AdminLogin","AdminHome","AdminLayout","use","base","scrollBehavior","to","from","savedPosition","x","y","routes","children","path","beforeEnter","next","toastShow","fullPath","Submission","query","atob","decodeURIComponent","Home","MainLayout","LocalStorageKeys","HttpStatusCode","jsonString","JSON","parse","obj","hasUndefinedKey","normalized","replace","defaultToastConfig","theme","position","duration","singleton","action","onClick","toast","goAway","toQueryString","join","fromQueryString","queryString","queries","temp","params","config","toasted","show","haveSetLanguage","canSetLanguage","trim","browserLanguage","navigator","language","cookie","loadExternalScript","scriptUrl","async","existingEl","querySelector","classList","contains","lastOnload","el","add","addEventListener","remove","append","faChevronDown","faExclamationTriangle","faExternalLinkAlt","faTable","faFilePdf","faInfoCircle","faPencilAlt","faPlus","faTrashAlt","faSearch","faUser","faFileDownload","faSortAmountDown","faShare","faComment","faTimes","faHistory","search","indexOf","substring","history","replaceState","Authorization","phoneNumber","productionTip","h","App","$mount","showShare","windowWidth","hideShare","canShare","share","recipientError","shareRecipient","shareSmsOrEmail","getUrl","copyLink","origin","innerWidth","loadingShare","$modal","hide","shareData","url","send","recipient","num","clipboard","writeText","body","select","execCommand","assign","isAdmin","decodeToken","userId","sub","username","regionsJson","regions","userRole","jsonParse","activateInput","autocomplete","pattern","internalType","placeholder","mask","masked","tokens","handleInput","nativeOn","onFocus","onBlur","X","S","A","transform","v","toLocaleUpperCase","toLocaleLowerCase","escape","inheritAttrs","$data","validator","Function"],"mappings":"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","file":"js/app.115de6ad.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-1be48160\":\"4726033f\",\"chunk-2d2248df\":\"3e7cf163\",\"chunk-96dac130\":\"ed8e80f2\"}[chunkId] + \".js\"\n \t}\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 \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-1be48160\":1,\"chunk-96dac130\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-1be48160\":\"ad87a500\",\"chunk-2d2248df\":\"31d6cfe0\",\"chunk-96dac130\":\"eae9b4ab\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=style&index=0&id=6fafc0fa&lang=scss&scoped=true&\"","/* tslint:disable */\r\nconst MIN_LOADER_TIME = 500;\r\n\r\nclass TimeoutError extends Error {\r\n constructor(message: string) {\r\n super(message);\r\n this.name = 'TimeoutError';\r\n }\r\n}\r\n\r\nclass MinTimer {\r\n public onComplete: ((val: any) => any) | undefined;\r\n public onError: ((err: Error) => any) | undefined;\r\n\r\n private minTime: number;\r\n private timeout: number | undefined;\r\n private tasks: any[];\r\n private resolveComplete:\r\n | ((value?: {} | PromiseLike<{}> | undefined) => void)\r\n | undefined;\r\n private waiter: () => Promise;\r\n\r\n /**\r\n * @param minTime - The minimum amount of time (in milliseconds) to wait before calling onComplete\r\n * @param timeout - Throw an error after this amount of time has passed (in milliseconds)\r\n */\r\n constructor(minTime: number = MIN_LOADER_TIME, timeout?: number) {\r\n if (timeout && timeout <= minTime) {\r\n throw new Error('Timeout cannot be larger than minTime');\r\n }\r\n\r\n this.minTime = minTime;\r\n this.timeout = timeout;\r\n\r\n this.tasks = [\r\n () => new Promise(resolve => setTimeout(() => resolve(), this.minTime)),\r\n ];\r\n\r\n if (this.timeout) {\r\n this.tasks.push(\r\n () =>\r\n new Promise((resolve, reject) =>\r\n setTimeout(\r\n () => reject(new TimeoutError('Timer has timed out')),\r\n this.timeout\r\n )\r\n )\r\n );\r\n }\r\n\r\n this.waiter = () => {\r\n return Promise.all(this.tasks.map(t => t()))\r\n .then(arr => {\r\n if (this.onComplete) {\r\n this.onComplete(arr[1]);\r\n }\r\n })\r\n .catch(err => {\r\n if (this.onError) {\r\n this.onError(err);\r\n } else {\r\n throw err;\r\n }\r\n });\r\n };\r\n }\r\n\r\n /**\r\n * Start the timer's countdown\r\n */\r\n public start(): void {\r\n this.tasks.push(\r\n () =>\r\n new Promise((resolve, reject) => {\r\n this.resolveComplete = resolve;\r\n })\r\n );\r\n\r\n this.waiter();\r\n }\r\n\r\n /**\r\n * Mark the timer promise as complete when the minimum timer is complete\r\n * @param value - A value to pass to the onComplete function when the timer has completed\r\n */\r\n public complete(value: any) {\r\n if (this.resolveComplete) {\r\n this.resolveComplete(value);\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n}\r\n\r\nexport default MinTimer;\r\n","import { LocalStorageKeys } from '@/app.constants';\r\nimport { decodeToken, IToken } from './utils/authUtils';\r\n\r\nconst jwt = localStorage.getItem(LocalStorageKeys.jwt);\r\nexport interface IState {\r\n isAuthenticated: boolean;\r\n jwt: string;\r\n token: IToken | object;\r\n}\r\n\r\nexport const store = {\r\n state: {\r\n isAuthenticated: false,\r\n jwt: '',\r\n token: {},\r\n } as IState,\r\n\r\n setJwt(jwtString: string): void {\r\n this.state.jwt = jwtString;\r\n localStorage.setItem(LocalStorageKeys.jwt, jwtString);\r\n _updateToken();\r\n _updateIsAuthenticated();\r\n },\r\n clearJwt(): void {\r\n this.state.jwt = '';\r\n localStorage.removeItem(LocalStorageKeys.jwt);\r\n _updateToken();\r\n _updateIsAuthenticated();\r\n },\r\n};\r\n\r\nfunction _updateToken() {\r\n store.state.token = decodeToken(store.state.jwt || '');\r\n}\r\n\r\nfunction _updateIsAuthenticated() {\r\n store.state.isAuthenticated = !!store.state.jwt;\r\n}\r\n\r\n(function initStore() {\r\n store.setJwt(jwt || '');\r\n})();\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=style&index=0&id=797c63b0&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainLayout.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSection.vue?vue&type=style&index=0&id=07bddac0&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{staticClass:\"spinner\",class:_vm.cls,attrs:{\"width\":\"100%\",\"height\":\"100%\",\"viewBox\":\"0 0 66 66\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('circle',{staticClass:\"path\",attrs:{\"fill\":\"none\",\"stroke-width\":\"3\",\"stroke-linecap\":\"round\",\"cx\":\"33\",\"cy\":\"33\",\"r\":\"30\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({\r\n name: 'Loader',\r\n props: {\r\n cls: {\r\n required: false,\r\n type: String,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=6409b56f&scoped=true&\"\nimport script from \"./Loader.vue?vue&type=script&lang=ts&\"\nexport * from \"./Loader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&id=6409b56f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6409b56f\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Submission.vue?vue&type=style&index=0&id=a6990ee4&lang=scss&scoped=true&\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"site-wrap\"},[_c('Navbar'),_c('Header'),_c('main',{staticClass:\"main\"},[(!_vm.isAuthenticated)?_c('div',{staticClass:\"gray-bg\"},[(!_vm.showLoginForm)?_c('div',{staticClass:\"login-header\"},[_c('p',[_c('span',{staticClass:\"strong\"},[_vm._v(\"RETURNING USERS:\")]),_c('a',{staticClass:\"link\",on:{\"click\":function($event){return _vm.toggleLoginForm()}}},[_vm._v(\"Log in to Update an Application\")])])]):_c('form-section',{attrs:{\"header\":\"Log in to Update an Application\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{attrs:{\"type\":\"text\",\"name\":\"Email Address\",\"required\":\"\",\"label\":\"Email Address\"},model:{value:(_vm.loginFormData.email),callback:function ($$v) {_vm.$set(_vm.loginFormData, \"email\", $$v)},expression:\"loginFormData.email\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{attrs:{\"type\":\"password\",\"name\":\"Password\",\"required\":\"\",\"label\":\"Password\"},model:{value:(_vm.loginFormData.password),callback:function ($$v) {_vm.$set(_vm.loginFormData, \"password\", $$v)},expression:\"loginFormData.password\"}})],1)])]),_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.login()}}},[_vm._v(\"\\n login\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.toggleLoginForm()}}},[_vm._v(\"\\n cancel\\n \")]),_c('router-link',{staticClass:\"forgot-password-link\",attrs:{\"to\":\"/reset\"}},[_vm._v(\"Forgot your password?\")])],1)])],1):(_vm.hasLoadedData)?_c('div',[_c('div',{staticClass:\"login-header\"},[_c('p',[_c('span',{staticClass:\"logged-in-text\"},[_vm._v(\"\\n Logged in as:\\n \"),(_vm.userName)?_c('span',{staticClass:\"username\"},[_vm._v(_vm._s(_vm.userName))]):_c('span',{staticClass:\"username\"},[_vm._v(_vm._s(_vm.formData.personalInfo.firstName)+\"\\n \"+_vm._s(_vm.formData.personalInfo.lastName))])]),_c('a',{staticClass:\"link\",staticStyle:{\"margin-left\":\"auto\"},on:{\"click\":_vm.logout}},[_vm._v(\"Log Out\")])])])]):_vm._e(),_vm._m(0),(!!_vm.dueDate)?_c('div',{staticClass:\"inner\"},[_c('div',{staticClass:\"alert\"},[_c('font-awesome-icon',{staticClass:\"small\",attrs:{\"icon\":\"info-circle\"}}),_c('p',[_c('i',{staticClass:\"fas fa-calendar\"}),_vm._v(\"\\n The deadline for this application is \"+_vm._s(_vm.dueDate)+\"\\n \")])],1)]):_vm._e(),_c('form',{attrs:{\"onsubmit\":\"event.preventDefault()\",\"data-vv-scope\":\"personalInfo\"}},[_c('form-section',{attrs:{\"header\":\"Are You a UFCW Member?\"}},[(_vm.hasLoadedData)?_c('section',{staticClass:\"vertical-list\"},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.memberStatus),expression:\"formData.memberStatus\"}],attrs:{\"type\":\"radio\",\"name\":\"member\",\"value\":\"yes\"},domProps:{\"checked\":_vm._q(_vm.formData.memberStatus,\"yes\")},on:{\"change\":function($event){return _vm.$set(_vm.formData, \"memberStatus\", \"yes\")}}}),_vm._v(\"Yes\\n \")]),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.memberStatus),expression:\"formData.memberStatus\"}],attrs:{\"type\":\"radio\",\"name\":\"member\",\"value\":\"no\"},domProps:{\"checked\":_vm._q(_vm.formData.memberStatus,\"no\")},on:{\"change\":function($event){return _vm.$set(_vm.formData, \"memberStatus\", \"no\")}}}),_vm._v(\"No\\n \")]),(_vm.formData.memberStatus === 'no')?_c('div',{staticClass:\"alert warning mt-8\"},[_vm._v(\"\\n You or your parent/guardian must be a member to be considered for\\n the scholarship. If you are not a member you are required to fill\\n out parent/guardian information below to validate UFCW membership.\\n \")]):_vm._e()]):_vm._e()]),_c('form-section',{staticClass:\"personalInfo\",attrs:{\"header\":\"Personal Information\",\"subheading\":\"All fields in this section are required for your application.\",\"isEditable\":\"\",\"isEditing\":_vm.editing.personalInfo,\"sectionId\":\"personalInfo\",\"btnText\":\"edit\"},on:{\"enable-edit\":_vm.markSectionEditable}},[(_vm.hasLoadedData)?_c('div',{class:{ 'existing-content': !_vm.editing.personalInfo }},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"firstName\",\"required\":\"\",\"label\":\"First Name\",\"isValid\":!_vm.errors.has('personalInfo.firstName'),\"data-vv-as\":\"First Name\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.firstName},model:{value:(_vm.formData.personalInfo.firstName),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"firstName\", $$v)},expression:\"formData.personalInfo.firstName\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"lastName\",\"required\":\"\",\"label\":\"Last Name\",\"isValid\":!_vm.errors.has('personalInfo.lastName'),\"data-vv-as\":\"Last Name\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.lastName},model:{value:(_vm.formData.personalInfo.lastName),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"lastName\", $$v)},expression:\"formData.personalInfo.lastName\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n required: true,\n regex: /[\\d●]{9}/,\n }),expression:\"{\\n required: true,\\n regex: /[\\\\d●]{9}/,\\n }\"}],attrs:{\"type\":\"text\",\"name\":\"ssn\",\"label\":\"SSN\",\"required\":\"\",\"isValid\":!_vm.errors.has('personalInfo.ssn'),\"mask\":\"^^^-^^-####\",\"data-vv-as\":\"SSN\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.ssn},model:{value:(_vm.formData.personalInfo.ssn),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"ssn\", $$v)},expression:\"formData.personalInfo.ssn\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n date_format: 'MM/dd/yyyy',\n after: '01/01/1900',\n required: true,\n }),expression:\"{\\n date_format: 'MM/dd/yyyy',\\n after: '01/01/1900',\\n required: true,\\n }\"}],attrs:{\"type\":\"date\",\"name\":\"birthDate\",\"label\":\"Birth Date\",\"mask\":\"##/##/####\",\"masked\":true,\"required\":\"\",\"data-vv-as\":\"Birth Date\",\"isValid\":!_vm.errors.has('personalInfo.birthDate'),\"readonly\":!_vm.editing.personalInfo &&\n !!_vm.formData.personalInfo.birthDate &&\n !_vm.errors.has('personalInfo.birthDate')},model:{value:(_vm.formData.personalInfo.birthDate),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"birthDate\", $$v)},expression:\"formData.personalInfo.birthDate\"}})],1)]),_c('br'),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],ref:\"address\",attrs:{\"type\":\"text\",\"name\":\"address\",\"required\":\"\",\"label\":\"Address\",\"isValid\":!_vm.errors.has('personalInfo.address'),\"data-vv-as\":\"Address\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.address},model:{value:(_vm.formData.personalInfo.address),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"address\", $$v)},expression:\"formData.personalInfo.address\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"city\",\"required\":\"\",\"label\":\"City\",\"isValid\":!_vm.errors.has('personalInfo.city'),\"data-vv-as\":\"City\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.city},model:{value:(_vm.formData.personalInfo.city),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"city\", $$v)},expression:\"formData.personalInfo.city\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"state\",\"required\":\"\",\"label\":\"State\",\"isValid\":!_vm.errors.has('personalInfo.state'),\"data-vv-as\":\"State\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.state},model:{value:(_vm.formData.personalInfo.state),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"state\", $$v)},expression:\"formData.personalInfo.state\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"zipCode\",\"required\":\"\",\"label\":\"ZIP\",\"isValid\":!_vm.errors.has('personalInfo.zipCode'),\"data-vv-as\":\"ZIP code\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.zipCode},model:{value:(_vm.formData.personalInfo.zipCode),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"zipCode\", $$v)},expression:\"formData.personalInfo.zipCode\"}})],1)]),_c('br'),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|phoneNumber'),expression:\"'required|phoneNumber'\"}],attrs:{\"type\":\"tel\",\"name\":\"homePhone\",\"required\":\"\",\"label\":\"Home Phone\",\"isValid\":!_vm.errors.has('personalInfo.homePhone'),\"mask\":\"(###) ###-####\",\"data-vv-as\":\"Home Phone\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.homePhone},model:{value:(_vm.formData.personalInfo.homePhone),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"homePhone\", $$v)},expression:\"formData.personalInfo.homePhone\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|phoneNumber'),expression:\"'required|phoneNumber'\"}],attrs:{\"type\":\"tel\",\"name\":\"cellPhone\",\"required\":\"\",\"label\":\"Cell Phone\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.cellPhone,\"mask\":\"(###) ###-####\",\"isValid\":!_vm.errors.has('personalInfo.cellPhone'),\"data-vv-as\":\"Cell Phone\"},model:{value:(_vm.formData.personalInfo.cellPhone),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"cellPhone\", $$v)},expression:\"formData.personalInfo.cellPhone\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|email'),expression:\"'required|email'\"}],attrs:{\"type\":\"text\",\"name\":\"email\",\"required\":\"\",\"label\":\"Email Address\",\"readonly\":!_vm.editing.personalInfo && !!_vm.formData.personalInfo.email,\"isValid\":!_vm.errors.has('personalInfo.email'),\"data-vv-as\":\"Email\"},model:{value:(_vm.formData.personalInfo.email),callback:function ($$v) {_vm.$set(_vm.formData.personalInfo, \"email\", $$v)},expression:\"formData.personalInfo.email\"}})],1)])])]):_vm._e()])],1),_c('form',{attrs:{\"onsubmit\":\"event.preventDefault()\"}},[_c('form-section',{attrs:{\"header\":\"School History\",\"subheading\":\"Add the schools you have attended\",\"isEditable\":\"\",\"isEditing\":_vm.editing.schoolHistory,\"sectionId\":\"schoolHistory\"},on:{\"enable-edit\":_vm.markSectionEditable}},[(_vm.editing.schoolHistory)?_c('div',{staticClass:\"section-entry\",class:{ hover: _vm.editing.schoolHistory }},[(_vm.hasLoadedData)?_c('form',{attrs:{\"data-vv-scope\":\"schoolHistory\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],ref:\"schoolHistoryName\",attrs:{\"type\":\"text\",\"name\":\"schoolName\",\"required\":\"\",\"label\":\"School Name\",\"isValid\":!_vm.errors.has('schoolHistory.schoolName'),\"data-vv-as\":\"School Name\",\"readonly\":!_vm.editing.schoolHistory &&\n !!_vm.formData.schoolHistory[0].schoolName},model:{value:(_vm.formData.schoolHistory[0].schoolName),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"schoolName\", $$v)},expression:\"formData.schoolHistory[0].schoolName\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('SelectField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"name\":\"schoolType\",\"id\":\"schoolTypeNew\",\"required\":\"\",\"label\":\"Type\",\"options\":[\n {\n name: 'High School',\n value: 'highSchool',\n },\n {\n name: 'College',\n value: 'college',\n } ],\"isValid\":!_vm.errors.has('schoolHistory.schoolType'),\"data-vv-as\":\"School Type\",\"readonly\":!_vm.editing.schoolHistory &&\n !!_vm.formData.schoolHistory[0].schoolType},model:{value:(_vm.formData.schoolHistory[0].schoolType),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"schoolType\", $$v)},expression:\"formData.schoolHistory[0].schoolType\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|length:4|date_format:yyyy'),expression:\"'required|length:4|date_format:yyyy'\"}],attrs:{\"type\":\"tel\",\"name\":\"graduationYear\",\"required\":\"\",\"label\":\"Class Of\",\"isValid\":!_vm.errors.has('schoolHistory.graduationYear'),\"mask\":\"####\",\"data-vv-as\":\"Class Of\",\"readonly\":!_vm.editing.schoolHistory &&\n !!_vm.formData.schoolHistory[0].graduationYear},model:{value:(_vm.formData.schoolHistory[0].graduationYear),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"graduationYear\", _vm._n($$v))},expression:\"formData.schoolHistory[0].graduationYear\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"schoolCity\",\"required\":\"\",\"label\":\"City\",\"isValid\":!_vm.errors.has('schoolHistory.schoolCity'),\"data-vv-as\":\"City\",\"readonly\":!_vm.editing.schoolHistory &&\n !!_vm.formData.schoolHistory[0].city},model:{value:(_vm.formData.schoolHistory[0].city),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"city\", $$v)},expression:\"formData.schoolHistory[0].city\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"schoolState\",\"required\":\"\",\"label\":\"State\",\"isValid\":!_vm.errors.has('schoolHistory.schoolState'),\"data-vv-as\":\"State\",\"readonly\":!_vm.editing.schoolHistory &&\n !!_vm.formData.schoolHistory[0].state},model:{value:(_vm.formData.schoolHistory[0].state),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"state\", $$v)},expression:\"formData.schoolHistory[0].state\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.formData.schoolHistory[0].comment),callback:function ($$v) {_vm.$set(_vm.formData.schoolHistory[0], \"comment\", $$v)},expression:\"formData.schoolHistory[0].comment\"}}),(_vm.editing.schoolHistory)?_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.persistChanges('schoolHistory')}}},[_vm._v(\"\\n Add\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.cancelEdit('schoolHistory')}}},[_vm._v(\"\\n cancel\\n \")])]):_vm._e()],1):_vm._e()]):_vm._e(),(_vm.pastSchools.length && _vm.hasLoadedData)?_c('div',{staticClass:\"ul\"},_vm._l((_vm.pastSchools),function(school,key){return _c('div',{key:school.schoolName + school.graduationYear},[(_vm.schoolEdit.key === 'undefined' || key !== _vm.schoolEdit.key)?_c('div',{key:school.schoolName + school.graduationYear,staticClass:\"past-entry li\",on:{\"click\":function($event){return _vm.editSchool(key)}}},[_c('h3',[_vm._v(_vm._s(school.schoolName))]),_c('h6',[_vm._v(_vm._s(_vm.schoolTypeMap(school.schoolType)))]),_c('div',{staticClass:\"expander-chevron\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)]):_c('form',{staticClass:\"existing-content\",attrs:{\"data-vv-scope\":\"schoolEdit\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],ref:\"schoolEditInput\",refInFor:true,attrs:{\"type\":\"text\",\"name\":\"schoolName\",\"required\":\"\",\"label\":\"School Name\",\"isValid\":!_vm.errors.has('schoolEdit.schoolName'),\"data-vv-as\":\"School Name\"},model:{value:(_vm.schoolEdit.schoolName),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"schoolName\", $$v)},expression:\"schoolEdit.schoolName\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('SelectField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"name\":\"schoolType\",\"id\":\"schoolType\",\"required\":\"\",\"label\":\"Type\",\"options\":[\n {\n name: 'High School',\n value: 'highSchool',\n },\n {\n name: 'College',\n value: 'college',\n } ],\"isValid\":!_vm.errors.has('schoolEdit.schoolType'),\"data-vv-as\":\"School Type\"},model:{value:(_vm.schoolEdit.schoolType),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"schoolType\", $$v)},expression:\"schoolEdit.schoolType\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|length:4|date_format:yyyy'),expression:\"'required|length:4|date_format:yyyy'\"}],attrs:{\"type\":\"tel\",\"name\":\"graduationYear\",\"required\":\"\",\"label\":\"Class Of\",\"mask\":\"####\",\"isValid\":!_vm.errors.has('schoolEdit.graduationYear'),\"data-vv-as\":\"Class Of\"},model:{value:(_vm.schoolEdit.graduationYear),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"graduationYear\", _vm._n($$v))},expression:\"schoolEdit.graduationYear\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"city\",\"required\":\"\",\"label\":\"City\",\"isValid\":!_vm.errors.has('schoolEdit.city'),\"data-vv-as\":\"City\"},model:{value:(_vm.schoolEdit.city),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"city\", $$v)},expression:\"schoolEdit.city\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"state\",\"required\":\"\",\"label\":\"State\",\"isValid\":!_vm.errors.has('schoolEdit.state'),\"data-vv-as\":\"State\"},model:{value:(_vm.schoolEdit.state),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"state\", $$v)},expression:\"schoolEdit.state\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.schoolEdit.comment),callback:function ($$v) {_vm.$set(_vm.schoolEdit, \"comment\", $$v)},expression:\"schoolEdit.comment\"}}),_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.saveSchoolEdit}},[_vm._v(\"\\n update\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.cancelSchoolEdit}},[_vm._v(\"\\n cancel\\n \")]),_c('font-awesome-icon',{staticClass:\"btn-delete\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":_vm.deleteSchool}})],1)],1)])}),0):_vm._e()]),_c('form-section',{attrs:{\"header\":\"School & Community Activities / Awards\",\"subheading\":\"Add up to 10 activities\",\"isEditable\":_vm.persistedData.activities\n ? _vm.persistedData.activities.length < 10\n : true,\"isEditing\":_vm.editing.activities,\"sectionId\":\"activities\"},on:{\"enable-edit\":_vm.markSectionEditable}},[(_vm.editing.activities)?_c('div',{staticClass:\"section-entry\",class:{ hover: _vm.editing.activities }},[(_vm.hasLoadedData)?_c('form',{attrs:{\"data-vv-scope\":\"activities\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"activityName\",\"required\":\"\",\"label\":\"Activity Name\",\"isValid\":!_vm.errors.has('activities.activityName'),\"data-vv-as\":\"Activity Name\"},model:{value:(_vm.formData.activities[0].activityName),callback:function ($$v) {_vm.$set(_vm.formData.activities[0], \"activityName\", $$v)},expression:\"formData.activities[0].activityName\"}})],1),_c('div',[_c('TextField',{attrs:{\"type\":\"text\",\"name\":\"role\",\"label\":\"Role/Office Held\",\"isValid\":!_vm.errors.has('activities.role'),\"data-vv-as\":\"Role/Office\"},model:{value:(_vm.formData.activities[0].role),callback:function ($$v) {_vm.$set(_vm.formData.activities[0], \"role\", $$v)},expression:\"formData.activities[0].role\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',{staticClass:\"form-group checkboxes\"},[_c('label',[_vm._v(\"School Years Participated:\")]),_c('ul',[_c('li',[_c('input',{attrs:{\"id\":\"all-checkbox\",\"type\":\"checkbox\"},domProps:{\"checked\":_vm.formData.activities[0].yearsParticipated.length ===\n 4},on:{\"click\":_vm.toggleAllYearsParticipated}}),_c('label',{attrs:{\"for\":\"all-checkbox\"}},[_vm._v(\"All\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.activities[0].yearsParticipated),expression:\"formData.activities[0].yearsParticipated\"}],attrs:{\"id\":\"freshman\",\"value\":\"1\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.formData.activities[0].yearsParticipated)?_vm._i(_vm.formData.activities[0].yearsParticipated,\"1\")>-1:(_vm.formData.activities[0].yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.formData.activities[0].yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"1\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"freshman\"}},[_vm._v(\"Freshman\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.activities[0].yearsParticipated),expression:\"formData.activities[0].yearsParticipated\"}],attrs:{\"id\":\"sophomore\",\"value\":\"2\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.formData.activities[0].yearsParticipated)?_vm._i(_vm.formData.activities[0].yearsParticipated,\"2\")>-1:(_vm.formData.activities[0].yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.formData.activities[0].yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"2\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"sophomore\"}},[_vm._v(\"Sophomore\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.activities[0].yearsParticipated),expression:\"formData.activities[0].yearsParticipated\"}],attrs:{\"id\":\"junior\",\"value\":\"3\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.formData.activities[0].yearsParticipated)?_vm._i(_vm.formData.activities[0].yearsParticipated,\"3\")>-1:(_vm.formData.activities[0].yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.formData.activities[0].yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"3\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"junior\"}},[_vm._v(\"Junior\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.formData.activities[0].yearsParticipated),expression:\"formData.activities[0].yearsParticipated\"}],attrs:{\"id\":\"senior\",\"value\":\"4\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.formData.activities[0].yearsParticipated)?_vm._i(_vm.formData.activities[0].yearsParticipated,\"4\")>-1:(_vm.formData.activities[0].yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.formData.activities[0].yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"4\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.formData.activities[0], \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"senior\"}},[_vm._v(\"Senior\")])])])])])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.formData.activities[0].comment),callback:function ($$v) {_vm.$set(_vm.formData.activities[0], \"comment\", $$v)},expression:\"formData.activities[0].comment\"}}),(_vm.editing.activities)?_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.persistChanges('activities')}}},[_vm._v(\"\\n Add\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.cancelEdit('activities')}}},[_vm._v(\"\\n cancel\\n \")])]):_vm._e()],1):_vm._e()]):_vm._e(),(_vm.pastActivities.length && _vm.hasLoadedData)?_c('div',{staticClass:\"ul\"},_vm._l((_vm.pastActivities),function(activity,key){return _c('div',{key:activity.activityName + Math.random()},[(\n _vm.activityEdit.key === 'undefined' || key !== _vm.activityEdit.key\n )?_c('div',{staticClass:\"past-entry li\",on:{\"click\":function($event){return _vm.editActivity(key)}}},[_c('h3',[_vm._v(_vm._s(activity.activityName))]),_c('h6',[_vm._v(_vm._s(activity.role))]),_c('div',{staticClass:\"expander-chevron\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)]):_c('form',{staticClass:\"existing-content\",attrs:{\"data-vv-scope\":\"activityEdit\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"activityName\",\"required\":\"\",\"label\":\"Activity Name\",\"isValid\":!_vm.errors.has('activityEdit.activityName'),\"data-vv-as\":\"Activity Name\"},model:{value:(_vm.activityEdit.activityName),callback:function ($$v) {_vm.$set(_vm.activityEdit, \"activityName\", $$v)},expression:\"activityEdit.activityName\"}})],1),_c('div',[_c('TextField',{attrs:{\"type\":\"text\",\"name\":\"role\",\"label\":\"Role/Office Held\",\"isValid\":!_vm.errors.has('activityEdit.role'),\"data-vv-as\":\"Role/Office\"},model:{value:(_vm.activityEdit.role),callback:function ($$v) {_vm.$set(_vm.activityEdit, \"role\", $$v)},expression:\"activityEdit.role\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',{staticClass:\"form-group checkboxes\"},[_c('label',[_vm._v(\"School Years Participated:\")]),_c('ul',[_c('li',[_c('input',{attrs:{\"id\":\"edit-all-checkbox\",\"type\":\"checkbox\"},domProps:{\"checked\":_vm.activityEdit.yearsParticipated.length === 4},on:{\"click\":function($event){return _vm.toggleAllYearsParticipated('edit')}}}),_c('label',{attrs:{\"for\":\"edit-all-checkbox\"}},[_vm._v(\"All\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.activityEdit.yearsParticipated),expression:\"activityEdit.yearsParticipated\"}],attrs:{\"id\":\"freshman\",\"value\":\"1\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.activityEdit.yearsParticipated)?_vm._i(_vm.activityEdit.yearsParticipated,\"1\")>-1:(_vm.activityEdit.yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.activityEdit.yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"1\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"freshman\"}},[_vm._v(\"Freshman\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.activityEdit.yearsParticipated),expression:\"activityEdit.yearsParticipated\"}],attrs:{\"id\":\"sophomore\",\"value\":\"2\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.activityEdit.yearsParticipated)?_vm._i(_vm.activityEdit.yearsParticipated,\"2\")>-1:(_vm.activityEdit.yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.activityEdit.yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"2\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"sophomore\"}},[_vm._v(\"Sophomore\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.activityEdit.yearsParticipated),expression:\"activityEdit.yearsParticipated\"}],attrs:{\"id\":\"junior\",\"value\":\"3\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.activityEdit.yearsParticipated)?_vm._i(_vm.activityEdit.yearsParticipated,\"3\")>-1:(_vm.activityEdit.yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.activityEdit.yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"3\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"junior\"}},[_vm._v(\"Junior\")])]),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.activityEdit.yearsParticipated),expression:\"activityEdit.yearsParticipated\"}],attrs:{\"id\":\"senior\",\"value\":\"4\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.activityEdit.yearsParticipated)?_vm._i(_vm.activityEdit.yearsParticipated,\"4\")>-1:(_vm.activityEdit.yearsParticipated)},on:{\"change\":function($event){var $$a=_vm.activityEdit.yearsParticipated,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"4\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.activityEdit, \"yearsParticipated\", $$c)}}}}),_c('label',{attrs:{\"for\":\"senior\"}},[_vm._v(\"Senior\")])])])])])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.activityEdit.comment),callback:function ($$v) {_vm.$set(_vm.activityEdit, \"comment\", $$v)},expression:\"activityEdit.comment\"}}),_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.saveActivityEdit}},[_vm._v(\"\\n Update\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.cancelActivityEdit}},[_vm._v(\"\\n cancel\\n \")]),_c('font-awesome-icon',{staticClass:\"btn-delete\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":_vm.deleteActivity}})],1)],1)])}),0):_vm._e()]),_c('form-section',{attrs:{\"header\":\"Employment History\",\"subheading\":\"List jobs held during last four years\",\"isEditable\":\"\",\"isEditing\":_vm.editing.employmentHistory,\"sectionId\":\"employmentHistory\"},on:{\"enable-edit\":_vm.markSectionEditable}},[(_vm.editing.employmentHistory)?_c('div',{staticClass:\"section-entry\",class:{ hover: _vm.editing.employmentHistory }},[(_vm.hasLoadedData)?_c('form',{attrs:{\"data-vv-scope\":\"employmentHistory\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],ref:\"employmentHistoryName\",attrs:{\"type\":\"text\",\"name\":\"employerName\",\"required\":\"\",\"label\":\"Employer Name\",\"isValid\":!_vm.errors.has('employmentHistory.employerName'),\"data-vv-as\":\"Employer Name\",\"readonly\":!_vm.editing.employmentHistory &&\n !!_vm.formData.employmentHistory[0].employerName},model:{value:(_vm.formData.employmentHistory[0].employerName),callback:function ($$v) {_vm.$set(_vm.formData.employmentHistory[0], \"employerName\", $$v)},expression:\"formData.employmentHistory[0].employerName\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"title\",\"required\":\"\",\"label\":\"Job Title\",\"isValid\":!_vm.errors.has('employmentHistory.title'),\"data-vv-as\":\"Job Title\",\"readonly\":!_vm.editing.employmentHistory &&\n !!_vm.formData.employmentHistory[0].title},model:{value:(_vm.formData.employmentHistory[0].title),callback:function ($$v) {_vm.$set(_vm.formData.employmentHistory[0], \"title\", $$v)},expression:\"formData.employmentHistory[0].title\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n date_format: 'MM/yyyy',\n after: '01/1900',\n required: true,\n }),expression:\"{\\n date_format: 'MM/yyyy',\\n after: '01/1900',\\n required: true,\\n }\"}],ref:\"startDate\",attrs:{\"type\":\"date\",\"name\":\"startDate\",\"required\":\"\",\"label\":\"Start Date\",\"isValid\":!_vm.errors.has('employmentHistory.startDate'),\"mask\":\"##/####\",\"placeholder\":\"MM/yyyy\",\"masked\":true,\"data-vv-as\":\"Start Date\",\"readonly\":!_vm.editing.employmentHistory &&\n !!_vm.formData.employmentHistory[0].startDate},model:{value:(_vm.formData.employmentHistory[0].startDate),callback:function ($$v) {_vm.$set(_vm.formData.employmentHistory[0], \"startDate\", $$v)},expression:\"formData.employmentHistory[0].startDate\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n date_format: 'MM/yyyy',\n after: 'startDate',\n }),expression:\"{\\n date_format: 'MM/yyyy',\\n after: 'startDate',\\n }\"}],attrs:{\"type\":\"date\",\"name\":\"endDate\",\"label\":\"End Date\",\"isValid\":!_vm.errors.has('employmentHistory.endDate'),\"mask\":\"##/####\",\"placeholder\":\"MM/yyyy\",\"masked\":true,\"data-vv-as\":\"End Date\",\"readonly\":!_vm.editing.employmentHistory &&\n !!_vm.formData.employmentHistory[0].endDate},model:{value:(_vm.formData.employmentHistory[0].endDate),callback:function ($$v) {_vm.$set(_vm.formData.employmentHistory[0], \"endDate\", $$v)},expression:\"formData.employmentHistory[0].endDate\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.formData.employmentHistory[0].comment),callback:function ($$v) {_vm.$set(_vm.formData.employmentHistory[0], \"comment\", $$v)},expression:\"formData.employmentHistory[0].comment\"}}),(_vm.editing.employmentHistory)?_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.persistChanges('employmentHistory')}}},[_vm._v(\"\\n Add\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.cancelEdit('employmentHistory')}}},[_vm._v(\"\\n cancel\\n \")])]):_vm._e()],1):_vm._e()]):_vm._e(),(_vm.pastEmployments.length && _vm.hasLoadedData)?_c('div',{staticClass:\"ul\"},_vm._l((_vm.pastEmployments),function(employment,key){return _c('div',{key:employment.employerName + employment.title},[(\n _vm.employmentEdit.key === 'undefined' ||\n key !== _vm.employmentEdit.key\n )?_c('div',{staticClass:\"past-entry li\",on:{\"click\":function($event){return _vm.editEmployment(key)}}},[_c('h3',[_vm._v(_vm._s(employment.employerName))]),_c('h6',[_vm._v(_vm._s(employment.title))]),_c('div',{staticClass:\"expander-chevron\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)]):_c('form',{staticClass:\"existing-content\",attrs:{\"data-vv-scope\":\"employmentEdit\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],ref:\"employmentEditInput\",refInFor:true,attrs:{\"type\":\"text\",\"name\":\"employerName\",\"required\":\"\",\"label\":\"Employer Name\",\"isValid\":!_vm.errors.has('employmentEdit.employerName'),\"data-vv-as\":\"Employer Name\"},model:{value:(_vm.employmentEdit.employerName),callback:function ($$v) {_vm.$set(_vm.employmentEdit, \"employerName\", $$v)},expression:\"employmentEdit.employerName\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"title\",\"required\":\"\",\"label\":\"Job Title\",\"isValid\":!_vm.errors.has('employmentEdit.title'),\"data-vv-as\":\"Job Title\"},model:{value:(_vm.employmentEdit.title),callback:function ($$v) {_vm.$set(_vm.employmentEdit, \"title\", $$v)},expression:\"employmentEdit.title\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n date_format: 'MM/yyyy',\n date_between: ['01/1900', _vm.maxStartDate],\n }),expression:\"{\\n date_format: 'MM/yyyy',\\n date_between: ['01/1900', maxStartDate],\\n }\"}],ref:\"startDateEdit\",refInFor:true,attrs:{\"type\":\"date\",\"name\":\"startDate\",\"required\":\"\",\"label\":\"Start Date\",\"mask\":\"##/####\",\"placeholder\":\"MM/yyyy\",\"masked\":true,\"isValid\":!_vm.errors.has('employmentEdit.startDate'),\"data-vv-as\":\"Start Date\"},model:{value:(_vm.employmentEdit.startDate),callback:function ($$v) {_vm.$set(_vm.employmentEdit, \"startDate\", $$v)},expression:\"employmentEdit.startDate\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n date_format: 'MM/yyyy',\n after: 'startDateEdit',\n }),expression:\"{\\n date_format: 'MM/yyyy',\\n after: 'startDateEdit',\\n }\"}],attrs:{\"type\":\"date\",\"name\":\"endDate\",\"label\":\"End Date\",\"mask\":\"##/####\",\"placeholder\":\"MM/yyyy\",\"masked\":true,\"isValid\":!_vm.errors.has('employmentEdit.endDate'),\"data-vv-as\":\"End Date\"},model:{value:(_vm.employmentEdit.endDate),callback:function ($$v) {_vm.$set(_vm.employmentEdit, \"endDate\", $$v)},expression:\"employmentEdit.endDate\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.employmentEdit.comment),callback:function ($$v) {_vm.$set(_vm.employmentEdit, \"comment\", $$v)},expression:\"employmentEdit.comment\"}}),_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.saveEmploymentEdit}},[_vm._v(\"\\n Update\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.cancelEmploymentEdit}},[_vm._v(\"\\n cancel\\n \")]),_c('font-awesome-icon',{staticClass:\"btn-delete\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":_vm.deleteEmployment}})],1)],1)])}),0):_vm._e()]),_c('form-section',{attrs:{\"header\":\"Parent/Guardian Information\",\"subheading\":\"Please add parent or guardian information of whom is an active UFCW member.\",\"isEditable\":\"\",\"isEditing\":_vm.editing.relatives,\"sectionId\":\"relatives\"},on:{\"enable-edit\":_vm.markSectionEditable}},[(_vm.editing.relatives)?_c('div',{staticClass:\"section-entry\",class:{ hover: _vm.editing.relatives }},[(_vm.hasLoadedData)?_c('form',{attrs:{\"data-vv-scope\":\"relatives\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"firstName\",\"required\":\"\",\"label\":\"First Name\",\"isValid\":!_vm.errors.has('relatives.firstName'),\"data-vv-as\":\"First Name\",\"readonly\":!_vm.editing.relatives && !!_vm.formData.relatives[0].firstName},model:{value:(_vm.formData.relatives[0].firstName),callback:function ($$v) {_vm.$set(_vm.formData.relatives[0], \"firstName\", $$v)},expression:\"formData.relatives[0].firstName\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"lastName\",\"required\":\"\",\"label\":\"Last Name\",\"isValid\":!_vm.errors.has('relatives.lastName'),\"data-vv-as\":\"Last Name\",\"readonly\":!_vm.editing.relatives && !!_vm.formData.relatives[0].lastName},model:{value:(_vm.formData.relatives[0].lastName),callback:function ($$v) {_vm.$set(_vm.formData.relatives[0], \"lastName\", $$v)},expression:\"formData.relatives[0].lastName\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|numeric|length:9'),expression:\"'required|numeric|length:9'\"}],attrs:{\"type\":\"text\",\"name\":\"ssn\",\"required\":\"\",\"label\":\"SSN\",\"isValid\":!_vm.errors.has('relatives.ssn'),\"mask\":\"###-##-####\",\"data-vv-as\":\"SSN\",\"readonly\":!_vm.editing.relatives && !!_vm.formData.relatives[0].ssn},model:{value:(_vm.formData.relatives[0].ssn),callback:function ($$v) {_vm.$set(_vm.formData.relatives[0], \"ssn\", $$v)},expression:\"formData.relatives[0].ssn\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.formData.relatives[0].comment),callback:function ($$v) {_vm.$set(_vm.formData.relatives[0], \"comment\", $$v)},expression:\"formData.relatives[0].comment\"}}),(_vm.editing.relatives)?_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.persistChanges('relatives')}}},[_vm._v(\"\\n Add\\n \")]),(\n !_vm.relativesRequired ||\n _vm.persistedData.relatives.filter(function (r) { return !!r.ssn; }).length != 0\n )?_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.cancelEdit('relatives')}}},[_vm._v(\"\\n cancel\\n \")]):_vm._e()]):_vm._e()],1):_vm._e()]):_vm._e(),(_vm.relatives.length && _vm.hasLoadedData)?_c('div',{staticClass:\"ul\"},_vm._l((_vm.relatives),function(relative,key){return _c('div',{key:relative.firstName + relative.lastName},[(\n _vm.relativeEdit.key === 'undefined' || key !== _vm.relativeEdit.key\n )?_c('div',{staticClass:\"past-entry li\",on:{\"click\":function($event){return _vm.editRelative(key)}}},[_c('h3',[_vm._v(_vm._s(relative.firstName + ' ' + relative.lastName))]),_c('h6',[_vm._v(_vm._s(relative.jobTitle))]),_c('div',{staticClass:\"expander-chevron\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)]):_c('form',{staticClass:\"existing-content\",attrs:{\"data-vv-scope\":\"relativeEdit\"}},[_c('div',{staticClass:\"flex-inputs\"},[_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"firstName\",\"required\":\"\",\"label\":\"First Name\",\"isValid\":!_vm.errors.has('relativeEdit.firstName'),\"data-vv-as\":\"First Name\"},model:{value:(_vm.relativeEdit.firstName),callback:function ($$v) {_vm.$set(_vm.relativeEdit, \"firstName\", $$v)},expression:\"relativeEdit.firstName\"}})],1),_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"type\":\"text\",\"name\":\"lastName\",\"required\":\"\",\"label\":\"Last Name\",\"isValid\":!_vm.errors.has('relativeEdit.lastName'),\"data-vv-as\":\"Last Name\"},model:{value:(_vm.relativeEdit.lastName),callback:function ($$v) {_vm.$set(_vm.relativeEdit, \"lastName\", $$v)},expression:\"relativeEdit.lastName\"}})],1)]),_c('div',{staticClass:\"input-row\"},[_c('div',[_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n required: true,\n regex: /[\\d●]{9}/,\n }),expression:\"{\\n required: true,\\n regex: /[\\\\d●]{9}/,\\n }\"}],attrs:{\"type\":\"text\",\"name\":\"ssn\",\"required\":\"\",\"label\":\"SSN\",\"isValid\":!_vm.errors.has('relativeEdit.ssn'),\"mask\":\"^^^-^^-####\",\"data-vv-as\":\"SSN\"},model:{value:(_vm.relativeEdit.ssn),callback:function ($$v) {_vm.$set(_vm.relativeEdit, \"ssn\", $$v)},expression:\"relativeEdit.ssn\"}})],1)])]),_c('TextArea',{attrs:{\"label\":\"Comments\"},model:{value:(_vm.relativeEdit.comment),callback:function ($$v) {_vm.$set(_vm.relativeEdit, \"comment\", $$v)},expression:\"relativeEdit.comment\"}}),_c('div',[_c('button',{staticClass:\"action-button\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.saveRelativeEdit}},[_vm._v(\"\\n Update\\n \")]),_c('button',{staticClass:\"action-button hollow\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.cancelRelativeEdit}},[_vm._v(\"\\n cancel\\n \")]),_c('font-awesome-icon',{staticClass:\"btn-delete\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":_vm.deleteRelative}})],1)],1)])}),0):_vm._e()]),_c('form-section',{attrs:{\"header\":\"Essay Question\"}},[(_vm.hasLoadedData)?_c('div',[_c('h2',{staticClass:\"field-label\"},[_vm._v(\"\\n How have unions impacted your life or community?\\n \")]),_c('text-area',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"required\":\"\",\"label\":\"Type or paste answer here\",\"id\":\"essay-question\",\"name\":\"essayQuestion\",\"isValid\":!_vm.errors.has('essayQuestion'),\"data-vv-as\":\"Essay Question\"},model:{value:(_vm.formData.essayQuestion),callback:function ($$v) {_vm.$set(_vm.formData, \"essayQuestion\", $$v)},expression:\"formData.essayQuestion\"}}),_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"space-between\",\"width\":\"100%\"}},[_c('span',{staticClass:\"help-text\"},[_vm._v(\"Max 500 words\")]),_c('span',{staticClass:\"help-text\"},[_vm._v(_vm._s(_vm.formData.essayQuestion\n ? _vm.formData.essayQuestion.split(' ').length\n : 0)+\"/500\")])])],1):_vm._e()])],1),_c('div',{staticClass:\"form-footer\"},[_c('div',{staticClass:\"inner\"},[_c('p',[_vm._v(\"\\n I understand that I must print and mail in Part B of this\\n application by \"+_vm._s(_vm.dueDate)+\" in order to be considered for the UFCW\\n Charity Foundation scholarship. After you click ‘Submit’, you will\\n be shown a ‘Part B’ link below.\\n \")]),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hasAgreedWithTerms),expression:\"hasAgreedWithTerms\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.hasAgreedWithTerms)?_vm._i(_vm.hasAgreedWithTerms,null)>-1:(_vm.hasAgreedWithTerms)},on:{\"change\":function($event){var $$a=_vm.hasAgreedWithTerms,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hasAgreedWithTerms=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hasAgreedWithTerms=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hasAgreedWithTerms=$$c}}}}),_vm._v(\"I agree with\\n the above statement\\n \")]),_c('button',{staticClass:\"action-button submit-btn\",attrs:{\"type\":\"submit\",\"disabled\":!_vm.hasAgreedWithTerms},on:{\"click\":_vm.submitForm}},[(_vm.loading.formSubmission)?_c('span',[_c('Loader',{staticClass:\"btn-loader\"})],1):_c('span',[_vm._v(_vm._s(_vm.isAuthenticated ? 'Update Application' : 'Submit Application'))])]),(_vm.errors.any())?_c('div',{staticClass:\"alert warning imh-16\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"exclamation-triangle\"}}),_c('p',[_vm._v(_vm._s(_vm.prettyErrors))])],1):_vm._e(),(_vm.formErrors.submissionError)?_c('div',{staticClass:\"alert warning\"},[_c('p',[_vm._v(_vm._s(_vm.formErrors.submissionError))])]):_vm._e()])]),_vm._m(1)])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"inner\"},[_c('div',{attrs:{\"id\":\"google_translate_element\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"footer\"},[_c('div',{staticClass:\"inner\"},[_c('div',{staticClass:\"footer-buttons\"},[_c('a',{staticClass:\"logo\",attrs:{\"href\":\"/\"}},[_c('img',{staticClass:\"logo__img\",attrs:{\"src\":require(\"@/assets/ufcw-cf-white.svg\"),\"height\":\"32\",\"width\":\"115\",\"alt\":\"\"}})]),_c('a',{staticClass:\"btn\",attrs:{\"href\":\"mailto:cfscholarship@ufcw.org\"}},[_vm._v(\"Contact Us\")])]),_c('p',[_vm._v(\"\\n Copyright © 2018 The United Food and Commercial Workers\\n International Union (UFCW). All rights reserved.\\n \")])])])}]\n\nexport { render, staticRenderFns }","interface IAddressComponent {\r\n long_name: string;\r\n short_name: string;\r\n types: string[];\r\n}\r\n\r\ninterface IPlaceUtil {\r\n streetNumber: string;\r\n route: string;\r\n city: string;\r\n county: string;\r\n state: string;\r\n country: string;\r\n postalCode: string;\r\n postalCodeSuffix: string;\r\n}\r\n\r\nexport default class PlaceUtil implements IPlaceUtil {\r\n public streetNumber;\r\n public route;\r\n public city;\r\n public county;\r\n public state;\r\n public country;\r\n public postalCode;\r\n public postalCodeSuffix;\r\n\r\n private addressComponents;\r\n\r\n constructor(addressComponents) {\r\n this.addressComponents = addressComponents;\r\n\r\n const streetNumber = this.getByTypes(['street_number']);\r\n this.streetNumber = streetNumber ? streetNumber.short_name : '';\r\n\r\n const route = this.getByTypes(['route']);\r\n this.route = route ? route.short_name : '';\r\n\r\n const city = this.getByTypes(['locality', 'political']);\r\n this.city = city ? city.short_name : '';\r\n\r\n const county = this.getByTypes([\r\n 'administrative_area_level_2',\r\n 'political',\r\n ]);\r\n this.county = county ? county.short_name : '';\r\n\r\n const state = this.getByTypes(['administrative_area_level_1', 'political']);\r\n this.state = state ? state.short_name : '';\r\n\r\n const country = this.getByTypes(['country', 'political']);\r\n this.country = country ? country.short_name : '';\r\n\r\n const postalCode = this.getByTypes(['postal_code']);\r\n this.postalCode = postalCode ? postalCode.short_name : '';\r\n\r\n const postalCodeSuffix = this.getByTypes(['postal_code_suffix']);\r\n this.postalCodeSuffix = postalCodeSuffix ? postalCodeSuffix.short_name : '';\r\n }\r\n\r\n public getStreetNumber(): string {\r\n return this.streetNumber;\r\n }\r\n\r\n public getRoute(): string {\r\n return this.route;\r\n }\r\n\r\n public getAddress(): string {\r\n return `${this.streetNumber} ${this.route}`;\r\n }\r\n\r\n public getCity(): string {\r\n return this.city;\r\n }\r\n\r\n public getCounty(): string {\r\n return this.county;\r\n }\r\n\r\n public getState(): string {\r\n return this.state;\r\n }\r\n\r\n public getCountry(): string {\r\n return this.country;\r\n }\r\n\r\n public getPostalCode(): string {\r\n return this.postalCode;\r\n }\r\n\r\n public getPostalCodeSuffix(): string {\r\n return this.postalCodeSuffix;\r\n }\r\n\r\n private getByTypes(types): IAddressComponent {\r\n const component =\r\n this.addressComponents &&\r\n this.addressComponents.find(comp => {\r\n let passes = true;\r\n types.forEach(type => {\r\n if (!comp.types.includes(type)) {\r\n passes = false;\r\n }\r\n });\r\n return passes;\r\n });\r\n return component;\r\n }\r\n}\r\n","import phoneNumber from 'awesome-phonenumber';\r\n\r\nconst validateSSN = (ssn: string): boolean => {\r\n return /^\\d{9}$/.test(ssn);\r\n};\r\n\r\nconst validateEmail = (email: string): boolean => {\r\n return /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/.test(\r\n email\r\n );\r\n};\r\n\r\nconst validateFilled = (str: string) => {\r\n return str.length > 0;\r\n};\r\n\r\nconst validateDate = (date: string): boolean => {\r\n const matchesShape = /[0-1][0-9]\\/[0-23][0-9]\\/[0-9]{4}/.test(date);\r\n\r\n if (matchesShape) {\r\n const asDate = new Date(date);\r\n return asDate instanceof Date && !isNaN(asDate.getTime());\r\n }\r\n return false;\r\n};\r\n\r\nconst validatePassword = (pass: string): boolean => {\r\n return /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]{8,}$/.test(\r\n pass\r\n );\r\n};\r\n\r\nconst validatePhone = (phone: string): boolean => {\r\n return new phoneNumber(phone, 'US').isValid();\r\n};\r\n\r\nconst validateCell = (phone: string): boolean => {\r\n return new phoneNumber(phone, 'US').isMobile();\r\n};\r\n\r\nconst validateYear = (str: string): boolean => {\r\n return /\\d{4}/.test(str);\r\n};\r\n\r\nconst validateZip = (zip: string): boolean => {\r\n return (\r\n /^([0-9]{5})(?:[-\\s]*([0-9]{4}))?$/.test(zip) ||\r\n /^([A-Z][0-9][A-Z])\\s*([0-9][A-Z][0-9])$/.test(zip)\r\n );\r\n};\r\n\r\nconst schoolValidator = (school: any): boolean => {\r\n const fail = () => {\r\n throw new Error('validation failed');\r\n };\r\n try {\r\n let hasFailed = false;\r\n\r\n hasFailed = validateFilled(school.city) || fail();\r\n\r\n return hasFailed;\r\n } catch (e) {\r\n return false;\r\n }\r\n};\r\n\r\nconst validators = {\r\n validateCell,\r\n validateDate,\r\n validateEmail,\r\n validateFilled,\r\n validatePassword,\r\n validatePhone,\r\n validateSSN,\r\n validateYear,\r\n validateZip,\r\n};\r\n\r\nexport const typeValidators = {\r\n schoolValidator,\r\n};\r\n\r\nexport const validatorComponent = {\r\n methods: {\r\n ...validators,\r\n },\r\n};\r\n\r\nexport default validators;\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport axios, { AxiosError } from 'axios';\r\nimport { format, isAfter, startOfMonth } from 'date-fns';\r\nimport { cloneDeep, isEmpty, merge } from 'lodash-es';\r\nimport Vue from 'vue';\r\n\r\nimport Utils, { loadExternalScript } from '../../Utils';\r\nimport { logout } from '../../utils/authUtils';\r\nimport LoadingHelper from '../../utils/loadingHelper';\r\nimport PlaceUtil from '../../utils/placeUtil';\r\nimport { validatorComponent } from '../../utils/validators';\r\n\r\nimport { HttpStatusCode, LocalStorageKeys } from '../../app.constants';\r\nimport FormSection from '../../components/FormSection.vue';\r\nimport Loader from '../../components/Loader.vue';\r\nimport Header from '../../components/main/Header.vue';\r\nimport Navbar from '../../components/Navbar.vue';\r\nimport SelectField from '../../components/SelectField.vue';\r\nimport TextArea from '../../components/TextArea.vue';\r\nimport TextField from '../../components/TextField.vue';\r\nimport router from '../../router';\r\nimport { store } from '../../store';\r\n\r\nexport type SectionIds =\r\n | 'personalInfo'\r\n | 'localInfo'\r\n | 'schoolHistory'\r\n | 'activities'\r\n | 'employmentHistory'\r\n | 'relatives';\r\nexport type SchoolType = 'highSchool' | 'college';\r\nexport type UFCWMemberType = 'yes' | 'no' | 'relative' | undefined;\r\n\r\ndeclare const google: any;\r\n\r\ntype EditingFields = { [k in SectionIds]: boolean };\r\n\r\ninterface IPersonInfo {\r\n firstName: string;\r\n lastName: string;\r\n ssn: string;\r\n}\r\n\r\ninterface IRelativeInfo extends IPersonInfo {\r\n id: number;\r\n local: string;\r\n employer: string;\r\n title: string;\r\n comment?: string;\r\n}\r\n\r\ninterface IRelativeEdit extends IRelativeInfo {\r\n key: number;\r\n}\r\n\r\ninterface IPersonalInfo extends IPersonInfo {\r\n id?: number;\r\n address: string;\r\n city: string;\r\n state: string;\r\n zipCode: number;\r\n birthDate: string;\r\n homePhone: string;\r\n cellPhone: string;\r\n email: string;\r\n}\r\n\r\ninterface ILocalInfo {\r\n number: string;\r\n region: string;\r\n}\r\n\r\ninterface ISchoolHistory {\r\n schoolName: string;\r\n schoolType: SchoolType;\r\n city: string;\r\n state: string;\r\n graduationYear: number;\r\n comment?: string;\r\n}\r\n\r\ninterface ISchoolEdit extends ISchoolHistory {\r\n key: number;\r\n}\r\n\r\nenum ActivityYears {\r\n Freshman = 1,\r\n Sophomore,\r\n Junior,\r\n Senior,\r\n}\r\n\r\ninterface IActivity {\r\n activityName: string;\r\n role: string;\r\n yearsParticipated: ActivityYears[];\r\n comment?: string;\r\n}\r\n\r\ninterface IActivityEdit extends IActivity {\r\n key: number;\r\n}\r\n\r\ninterface IEmploymentHistory {\r\n employerName: string;\r\n jobTitle: string;\r\n startDate: string;\r\n endDate: string;\r\n comment?: string;\r\n}\r\n\r\ninterface IEmploymentEdit extends IEmploymentHistory {\r\n key: number;\r\n}\r\n\r\ninterface IScholarshipData {\r\n personalInfo: IPersonalInfo | object;\r\n localInfo: ILocalInfo | object;\r\n schoolHistory: ISchoolHistory[] | object[];\r\n activities: IActivity[] | object[];\r\n employmentHistory: IEmploymentHistory[] | object[];\r\n relatives?: IRelativeInfo[] | object[];\r\n\r\n memberStatus: UFCWMemberType | '';\r\n essayQuestion: string;\r\n\r\n [key: string]: any;\r\n}\r\n\r\ninterface IHomeData {\r\n relativesRequired: boolean;\r\n addressAutocomplete: any;\r\n empployerAutocomplete: any;\r\n editing: EditingFields;\r\n formData: IScholarshipData;\r\n hasAgreedWithTerms: boolean;\r\n hasLoadedData: boolean;\r\n loading: {\r\n formSubmission: boolean;\r\n };\r\n formErrors: {\r\n submissionError: string;\r\n };\r\n schoolEdit: ISchoolEdit;\r\n activityEdit: IActivityEdit;\r\n employmentEdit: IEmploymentEdit;\r\n relativeEdit: IRelativeEdit;\r\n persistedData: IScholarshipData;\r\n showLoginForm: boolean;\r\n loginFormData: ILoginForm;\r\n isAuthenticated: boolean;\r\n dueDate: string;\r\n userName: string;\r\n}\r\n\r\ninterface IApplicant extends IPersonalInfo {\r\n id: number;\r\n userId: string;\r\n local: string;\r\n dateCreated: string;\r\n dateUpdated: string;\r\n dateDisabled: string;\r\n userCreated: string;\r\n userUpdated: string;\r\n}\r\n\r\ninterface IEssayResponse {\r\n text: string;\r\n}\r\n\r\ninterface IApplication {\r\n id: number;\r\n applicantId: number;\r\n year: number;\r\n local: string;\r\n essayResponses: IEssayResponse[];\r\n schools: ISchoolHistory[];\r\n activities: IActivity[];\r\n employers: IEmploymentHistory[];\r\n memberRelatives: IRelativeInfo[];\r\n dateCreated: string;\r\n dateUpdated: string;\r\n dateDisabled: string;\r\n userCreated: string;\r\n userUpdated: string;\r\n}\r\n\r\ninterface IScholarshipForm {\r\n applicant: Partial;\r\n application: Partial;\r\n}\r\n\r\ninterface ISubmitScholarshipFormResponse {\r\n jwt: string;\r\n scholarshipForm: IScholarshipForm;\r\n}\r\n\r\ninterface ILoginForm {\r\n email: string;\r\n password: string;\r\n}\r\n\r\ninterface IApplicantLoginResponse {\r\n jwt: string;\r\n applicant: IApplicant;\r\n currentApplication: IApplication | null;\r\n}\r\n\r\nexport default Vue.extend({\r\n beforeMount() {\r\n this.editing.personalInfo = this.personalInfoIsValid;\r\n },\r\n mounted() {\r\n loadExternalScript(\r\n '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'\r\n ).then(() => {\r\n this.setLanguage();\r\n });\r\n },\r\n components: {\r\n FormSection,\r\n Header,\r\n Loader,\r\n Navbar,\r\n SelectField,\r\n TextArea,\r\n TextField,\r\n },\r\n computed: {\r\n pastSchools(): ISchoolHistory[] {\r\n if (!this.persistedData.schoolHistory) {\r\n return [];\r\n }\r\n return (this.persistedData.schoolHistory as ISchoolHistory[])\r\n .filter(school => school.schoolName)\r\n .sort((a, b) => {\r\n const ayear = a.graduationYear;\r\n const byear = b.graduationYear;\r\n\r\n return ayear > byear ? -1 : ayear === byear ? 0 : 1;\r\n });\r\n },\r\n minBirthDate: () => {\r\n const date = startOfMonth(new Date());\r\n return format(date, 'MM/dd/yyyy');\r\n },\r\n maxStartDate: () => {\r\n const date = startOfMonth(new Date());\r\n return format(date, 'MM/yyyy');\r\n },\r\n pastActivities(): IActivity[] {\r\n if (!this.persistedData.schoolHistory) {\r\n return [];\r\n }\r\n return (this.persistedData.activities as IActivity[])\r\n .filter(activity => activity.activityName)\r\n .sort((a, b) => {\r\n if (!a.activityName) {\r\n return -1;\r\n }\r\n return a.activityName > b.activityName\r\n ? 1\r\n : a.activityName === b.activityName\r\n ? 0\r\n : -1;\r\n });\r\n },\r\n relatives(): IRelativeInfo[] {\r\n if (!this.persistedData.relatives) {\r\n return [];\r\n }\r\n return (this.persistedData.relatives as IRelativeInfo[])\r\n .filter(relative => relative.lastName)\r\n .sort((a, b) => {\r\n if (!a.lastName) {\r\n return -1;\r\n }\r\n return a.lastName + ' ' + a.firstName > b.lastName + ' ' + b.firstName\r\n ? 1\r\n : a.lastName + ' ' + a.firstName === b.lastName + ' ' + b.firstName\r\n ? 0\r\n : -1;\r\n });\r\n },\r\n pastEmployments(): IEmploymentHistory[] {\r\n if (!this.persistedData.employmentHistory) {\r\n return [];\r\n }\r\n return (this.persistedData.employmentHistory as IEmploymentHistory[])\r\n .filter(employment => employment.employerName)\r\n .sort((a, b) => {\r\n return a.startDate > b.startDate\r\n ? 1\r\n : a.startDate === b.startDate\r\n ? 0\r\n : -1;\r\n });\r\n },\r\n personalInfoIsValid(): boolean {\r\n const personalInfo = this.formData.personalInfo;\r\n\r\n if (!personalInfo) {\r\n return false;\r\n }\r\n const hasEmptyValue = Utils.hasEmptyKey(personalInfo);\r\n const hasAllKeys = Object.keys(personalInfo).length >= 11;\r\n\r\n return !!(hasAllKeys && !hasEmptyValue) as boolean;\r\n },\r\n prettyErrors(): string {\r\n let message;\r\n if ((this as any).errors.all().length > 1) {\r\n message =\r\n 'There are multiple errors with the form above. Please check that all fields are correct.';\r\n } else {\r\n message =\r\n 'There is an error with the form above. Please check your application and try again.';\r\n }\r\n\r\n return message;\r\n },\r\n },\r\n async created() {\r\n if (store.state.isAuthenticated) {\r\n // Disable tslint here because it doesn't like the way Axios suggests we set the auth token\r\n /* tslint:disable:no-string-literal */\r\n axios.defaults.headers.common[\r\n 'Authorization'\r\n ] = `Bearer ${store.state.jwt}`;\r\n /* tslint:enable:no-string-literal */\r\n }\r\n\r\n const loader = new LoadingHelper(1000);\r\n loader.onComplete = (data: IScholarshipForm) => {\r\n if (data instanceof Error) {\r\n const err = data as any;\r\n if (\r\n err.response &&\r\n err.response.status === HttpStatusCode.Unauthorized\r\n ) {\r\n store.clearJwt();\r\n }\r\n Utils.toastError(\r\n 'Could not connect to server. Please try again later.'\r\n );\r\n return;\r\n }\r\n\r\n this.loadDataToForm(data);\r\n };\r\n loader.start();\r\n\r\n axios\r\n // @ts-ignore\r\n .get(`${process.env.VUE_APP_API_URI}/api/application/duedate`)\r\n .then(val => {\r\n if (val.data) {\r\n const formattedDate = format(new Date(val.data), 'MMMM dd, yyyy');\r\n Vue.set(this, 'dueDate', formattedDate);\r\n }\r\n })\r\n .catch(err => {\r\n Utils.toastError(\r\n 'Could not connect to server. Please try again later.'\r\n );\r\n });\r\n\r\n let formData = {};\r\n\r\n if (store.state.isAuthenticated) {\r\n try {\r\n const res = await axios.get(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/application`\r\n );\r\n formData = res.data;\r\n loader.complete(formData);\r\n } catch (err) {\r\n loader.complete(err);\r\n }\r\n } else {\r\n loader.complete(formData);\r\n }\r\n },\r\n data() {\r\n return {\r\n relativesRequired: false,\r\n activityEdit: {},\r\n addressAutocomplete: null,\r\n editing: {\r\n activities: false,\r\n employmentHistory: false,\r\n localInfo: false,\r\n personalInfo: false,\r\n relatives: false,\r\n schoolHistory: false,\r\n } as EditingFields,\r\n employmentEdit: {},\r\n formData: {\r\n activities: [{ yearsParticipated: [] }],\r\n },\r\n formErrors: {},\r\n hasAgreedWithTerms: false,\r\n hasLoadedData: false,\r\n loading: {\r\n formSubmission: false,\r\n },\r\n persistedData: {},\r\n relativeEdit: {},\r\n schoolEdit: {},\r\n showLoginForm: false,\r\n loginFormData: {},\r\n isAuthenticated: store.state.isAuthenticated,\r\n userName: '',\r\n dueDate: '',\r\n } as IHomeData;\r\n },\r\n methods: {\r\n cancelEdit(section: SectionIds) {\r\n this.makeUneditable(section);\r\n const savedData = cloneDeep(this.persistedData[section]);\r\n // If the data is an array, we know it's one of the ones where it can have multiple entries (schools, activities, etc.)\r\n // In which case, we want to reset it.\r\n // Otherwise, we want to make it the same as the persisted data.\r\n if (savedData && Array.isArray(savedData)) {\r\n if (section === 'activities') {\r\n this.formData[section] = [\r\n {\r\n yearsParticipated: [],\r\n },\r\n ];\r\n } else {\r\n this.formData[section] = [{}];\r\n }\r\n } else {\r\n this.formData[section] = savedData as any;\r\n }\r\n },\r\n cancelSchoolEdit() {\r\n this.$validator.pause();\r\n Vue.set(this, 'schoolEdit', {});\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n cancelActivityEdit() {\r\n this.$validator.pause();\r\n Vue.set(this, 'activityEdit', {});\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n cancelEmploymentEdit() {\r\n this.$validator.pause();\r\n Vue.set(this, 'employmentEdit', {});\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n cancelRelativeEdit() {\r\n this.$validator.pause();\r\n Vue.set(this, 'relativeEdit', {});\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n deleteActivity() {\r\n this.$validator.pause();\r\n const key = this.activityEdit.key;\r\n const persistedData = this.persistedData.activities;\r\n persistedData.splice(key, 1);\r\n Vue.set(this, 'activityEdit', {});\r\n Vue.set(this.persistedData, 'activities', persistedData);\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n deleteEmployment() {\r\n this.$validator.pause();\r\n const key = this.employmentEdit.key;\r\n const persistedData = this.persistedData.employmentHistory;\r\n persistedData.splice(key, 1);\r\n Vue.set(this, 'employmentEdit', {});\r\n Vue.set(this.persistedData, 'employmentHistory', persistedData);\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n deleteSchool() {\r\n this.$validator.pause();\r\n const key = this.schoolEdit.key;\r\n const persistedData = this.persistedData.schoolHistory;\r\n persistedData.splice(key, 1);\r\n Vue.set(this, 'schoolEdit', {});\r\n Vue.set(this.persistedData, 'schoolHistory', persistedData);\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n deleteRelative() {\r\n this.$validator.pause();\r\n const key = this.relativeEdit.key;\r\n const persistedData = this.persistedData.relatives || [];\r\n persistedData.splice(key, 1);\r\n Vue.set(this, 'relativeEdit', {});\r\n Vue.set(this.persistedData, 'relatives', persistedData);\r\n this.$nextTick(function() {\r\n this.$validator.resume();\r\n });\r\n },\r\n editSchool(i: number) {\r\n Vue.set(this, 'schoolEdit', {\r\n ...this.persistedData.schoolHistory[i],\r\n key: i,\r\n });\r\n this.$nextTick(function() {\r\n const schoolAutocomplete = new google.maps.places.Autocomplete(\r\n (this.$refs.schoolEditInput as Vue)[0].$refs.input,\r\n {\r\n types: ['establishment'],\r\n }\r\n );\r\n schoolAutocomplete.setFields(['address_components', 'name']);\r\n schoolAutocomplete.addListener('place_changed', () => {\r\n this.handleSchoolEditPlaceSelection(schoolAutocomplete.getPlace());\r\n });\r\n });\r\n },\r\n editActivity(i: number) {\r\n Vue.set(this, 'activityEdit', {\r\n ...this.persistedData.activities[i],\r\n key: i,\r\n });\r\n },\r\n editEmployment(i: number) {\r\n Vue.set(this, 'employmentEdit', {\r\n ...this.persistedData.employmentHistory[i],\r\n key: i,\r\n });\r\n this.$nextTick(function() {\r\n const employerAutocomplete = new google.maps.places.Autocomplete(\r\n (this.$refs.employmentEditInput as Vue)[0].$refs.input,\r\n {\r\n types: ['establishment'],\r\n }\r\n );\r\n employerAutocomplete.setFields(['address_components', 'name']);\r\n employerAutocomplete.addListener('place_changed', () => {\r\n this.handleEmploymentEditPlaceSelection(\r\n employerAutocomplete.getPlace()\r\n );\r\n });\r\n });\r\n },\r\n editRelative(i: number) {\r\n if (this.persistedData.relatives) {\r\n Vue.set(this, 'relativeEdit', {\r\n ...this.persistedData.relatives[i],\r\n key: i,\r\n });\r\n }\r\n },\r\n handleEmploymentEditPlaceSelection(location) {\r\n const name = location.name;\r\n\r\n (this.employmentEdit as IEmploymentHistory).employerName = name;\r\n },\r\n handleEmploymentPlaceSelection(location) {\r\n const name = location.name;\r\n\r\n (this.formData\r\n .employmentHistory[0] as IEmploymentHistory).employerName = name;\r\n },\r\n handlePersonalPlaceSelection() {\r\n const location = this.addressAutocomplete.getPlace();\r\n\r\n const util = new PlaceUtil(location.address_components);\r\n\r\n const addressParts = location.address_components;\r\n\r\n const address = ((this.formData\r\n .personalInfo as IPersonalInfo).address = util.getAddress());\r\n\r\n (this.formData.personalInfo as IPersonalInfo).city = util.getCity();\r\n (this.formData.personalInfo as IPersonalInfo).state = util.getState();\r\n (this.formData.personalInfo as IPersonalInfo).zipCode = parseInt(\r\n util.getPostalCode(),\r\n 10\r\n );\r\n },\r\n handleSchoolEditPlaceSelection(location) {\r\n const name = location.name;\r\n const util = new PlaceUtil(location.address_components);\r\n\r\n (this.schoolEdit as ISchoolHistory).schoolName = name;\r\n (this.schoolEdit as ISchoolHistory).city = util.getCity();\r\n (this.formData\r\n .schoolHistory[0] as ISchoolHistory).state = util.getState();\r\n },\r\n handleSchoolPlaceSelection(location) {\r\n const name = location.name;\r\n const util = new PlaceUtil(location.address_components);\r\n\r\n (this.formData.schoolHistory[0] as ISchoolHistory).schoolName = name;\r\n (this.formData.schoolHistory[0] as ISchoolHistory).city = util.getCity();\r\n (this.formData\r\n .schoolHistory[0] as ISchoolHistory).state = util.getState();\r\n },\r\n hasEmptyKey: Utils.hasEmptyKey,\r\n loadDataToForm(scholarshipApplication: IScholarshipForm) {\r\n const { applicant, application } = scholarshipApplication;\r\n\r\n const newPersisted = {\r\n personalInfo: {},\r\n localInfo: {},\r\n memberStatus: '',\r\n essayQuestion: '',\r\n schoolHistory: [{}],\r\n activities: [{ yearsParticipated: [] }],\r\n employmentHistory: [{}],\r\n relatives: [{}],\r\n } as IScholarshipData;\r\n\r\n const newFormData = cloneDeep(newPersisted);\r\n\r\n if (applicant) {\r\n applicant.birthDate = applicant.birthDate\r\n ? format(new Date(applicant.birthDate), 'MM/dd/yyyy')\r\n : '';\r\n newPersisted.personalInfo = applicant;\r\n (newPersisted.personalInfo as IPersonalInfo).email =\r\n (applicant.email && applicant.email.toLowerCase()) || '';\r\n\r\n if (applicant.ssn && applicant.ssn.length < 9) {\r\n let maskedSsn = applicant.ssn;\r\n while (maskedSsn.length < 9) {\r\n maskedSsn = '●' + maskedSsn;\r\n }\r\n (newPersisted.personalInfo as IPersonInfo).ssn = maskedSsn;\r\n }\r\n\r\n this.editing.personalInfo = false;\r\n } else if (store.state.isAuthenticated) {\r\n Vue.set(\r\n this,\r\n 'userName',\r\n store.state.token && store.state.token['userName']\r\n );\r\n }\r\n\r\n if (application) {\r\n newPersisted.id = application.id || null;\r\n newPersisted.year = application.year;\r\n newPersisted.employmentHistory = application.employers\r\n ? application.employers.map(emp => {\r\n const newHist = emp;\r\n if (newHist.startDate) {\r\n newHist.startDate = format(\r\n new Date(newHist.startDate),\r\n 'MM/dd/yyyy'\r\n );\r\n }\r\n if (newHist.endDate) {\r\n newHist.endDate = format(\r\n new Date(newHist.endDate),\r\n 'MM/dd/yyyy'\r\n );\r\n }\r\n\r\n return newHist;\r\n })\r\n : [{}];\r\n newPersisted.localInfo = { number: applicant.local };\r\n newPersisted.schoolHistory =\r\n application.schools && application.schools.length > 0\r\n ? application.schools.map((school: ISchoolHistory) => {\r\n const newSchool = school;\r\n if (newSchool.graduationYear && school.graduationYear > 0) {\r\n newSchool.graduationYear = newSchool.graduationYear;\r\n } else {\r\n (newSchool.graduationYear as number | undefined) = undefined;\r\n }\r\n\r\n return newSchool;\r\n })\r\n : [{}];\r\n newPersisted.activities = (application.activities &&\r\n application.activities.length > 0 &&\r\n application.activities) || [{ yearsParticipated: [] }];\r\n newPersisted.employmentHistory = (application.employers &&\r\n application.employers.length > 0 &&\r\n application.employers) || [{}];\r\n\r\n newPersisted.relatives = ((application.memberRelatives &&\r\n application.memberRelatives.length > 0 &&\r\n application.memberRelatives.map(rel => {\r\n if (rel.ssn && rel.ssn.length < 9) {\r\n let maskedSsn = rel.ssn;\r\n while (maskedSsn.length < 9) {\r\n maskedSsn = '●' + maskedSsn;\r\n }\r\n rel.ssn = maskedSsn;\r\n }\r\n return rel;\r\n })) as IRelativeInfo[]) || [{}];\r\n\r\n newPersisted.memberStatus =\r\n application.memberRelatives && application.memberRelatives.length\r\n ? 'no'\r\n : 'yes';\r\n\r\n newPersisted.essayQuestion =\r\n (application.essayResponses && application.essayResponses[0].text) ||\r\n '';\r\n }\r\n\r\n newFormData.personalInfo = newPersisted.personalInfo;\r\n newFormData.memberStatus = newPersisted.memberStatus;\r\n newFormData.essayQuestion = newPersisted.essayQuestion;\r\n\r\n Vue.set(this, 'persistedData', newPersisted);\r\n Vue.set(this, 'formData', newFormData);\r\n\r\n if (!this.personalInfoIsValid) {\r\n this.editing.personalInfo = true;\r\n }\r\n\r\n this.hasLoadedData = true;\r\n },\r\n loadFormToPersist() {\r\n const newPersisted = {\r\n ...this.persistedData,\r\n essayQuestion: this.formData.essayQuestion,\r\n memberStatus: this.formData.memberStatus,\r\n } as IScholarshipData;\r\n (newPersisted.localInfo as ILocalInfo).number = '';\r\n Vue.set(this, 'persistedData', newPersisted);\r\n },\r\n logout() {\r\n logout();\r\n },\r\n makeUneditable(section: SectionIds) {\r\n this.editing[section] = false;\r\n },\r\n markSectionEditable(sectionId: SectionIds) {\r\n this.editing[sectionId] = true;\r\n\r\n this.$nextTick(function() {\r\n if (sectionId === 'schoolHistory') {\r\n const schoolAutocomplete = new google.maps.places.Autocomplete(\r\n (this.$refs.schoolHistoryName as Vue).$refs.input,\r\n {\r\n types: ['establishment'],\r\n }\r\n );\r\n schoolAutocomplete.setFields(['address_components', 'name']);\r\n schoolAutocomplete.addListener('place_changed', () => {\r\n this.handleSchoolPlaceSelection(schoolAutocomplete.getPlace());\r\n });\r\n } else if (sectionId === 'employmentHistory') {\r\n const employmentAutocomplete = new google.maps.places.Autocomplete(\r\n (this.$refs.employmentHistoryName as Vue).$refs.input,\r\n {\r\n types: ['establishment'],\r\n }\r\n );\r\n employmentAutocomplete.setFields(['address_components', 'name']);\r\n employmentAutocomplete.addListener('place_changed', () => {\r\n this.handleEmploymentPlaceSelection(\r\n employmentAutocomplete.getPlace()\r\n );\r\n });\r\n }\r\n });\r\n },\r\n async persistChanges(section: SectionIds, toastError = true) {\r\n const isValid = await this.$validator.validateAll(section);\r\n if (!isValid) {\r\n if (toastError) {\r\n const error = (this as any).errors.all(section)[0];\r\n Utils.toastError(error);\r\n }\r\n return false;\r\n }\r\n\r\n const fieldData = this.formData[section] as any;\r\n if (section === 'schoolHistory') {\r\n (this.persistedData[section] as ISchoolHistory[]).push({\r\n ...fieldData[0],\r\n });\r\n const sorted = (this.persistedData[section] as ISchoolHistory[])\r\n .filter(schoolHistory => schoolHistory.schoolName)\r\n .sort((a, b) => {\r\n const ayear = a.graduationYear;\r\n const byear = b.graduationYear;\r\n\r\n return ayear > byear ? -1 : ayear === byear ? 0 : 1;\r\n });\r\n Vue.set(this.persistedData, section, sorted);\r\n Vue.set(this.formData[section], 0, {});\r\n } else if (section === 'activities') {\r\n (this.persistedData[section] as IActivity[]).push({\r\n ...fieldData[0],\r\n });\r\n const sorted = (this.persistedData[section] as IActivity[])\r\n .filter(activity => activity.activityName)\r\n .sort((a, b) => {\r\n return a.activityName > b.activityName\r\n ? 1\r\n : a.activityName === b.activityName\r\n ? 0\r\n : -1;\r\n });\r\n Vue.set(this.persistedData, section, sorted);\r\n Vue.set(this.formData[section], 0, {\r\n yearsParticipated: [],\r\n });\r\n } else if (section === 'employmentHistory') {\r\n (this.persistedData[section] as IEmploymentHistory[]).push({\r\n ...fieldData[0],\r\n });\r\n const sorted = (this.persistedData[section] as IEmploymentHistory[])\r\n .filter(employment => employment.employerName)\r\n .sort((a, b) => {\r\n return a.startDate > b.startDate\r\n ? 1\r\n : a.startDate === b.startDate\r\n ? 0\r\n : -1;\r\n });\r\n Vue.set(this.persistedData, section, sorted);\r\n Vue.set(this.formData[section], 0, {});\r\n } else if (section === 'relatives') {\r\n const newRelative: IRelativeInfo = fieldData[0];\r\n\r\n (this.persistedData[section] as IRelativeInfo[]).push({\r\n ...newRelative,\r\n });\r\n const sorted = (this.persistedData[section] as IRelativeInfo[])\r\n .filter(rel => rel.lastName)\r\n .sort((a, b) => {\r\n if (!a.lastName) {\r\n return -1;\r\n }\r\n return a.lastName + ' ' + a.firstName >\r\n b.lastName + ' ' + b.firstName\r\n ? 1\r\n : a.lastName + ' ' + a.firstName ===\r\n b.lastName + ' ' + b.firstName\r\n ? 0\r\n : -1;\r\n });\r\n Vue.set(this.persistedData, section, sorted);\r\n Vue.set(this.formData[section] || [], 0, {\r\n yearsParticipated: [],\r\n });\r\n } else {\r\n this.persistedData[section] = fieldData;\r\n }\r\n\r\n this.makeUneditable(section);\r\n },\r\n async saveSchoolEdit() {\r\n const isValid = await this.$validator.validateAll('schoolEdit');\r\n if (!isValid) {\r\n const error = (this as any).errors.all('schoolEdit')[0];\r\n Utils.toastError(error);\r\n return;\r\n }\r\n\r\n const school = this.schoolEdit;\r\n const key = school.key;\r\n delete school.key;\r\n const newPersist = this.persistedData.schoolHistory;\r\n newPersist[key] = school;\r\n\r\n const sorted = (newPersist as ISchoolHistory[]).sort((a, b) => {\r\n const ayear = a.graduationYear;\r\n const byear = b.graduationYear;\r\n\r\n return ayear > byear ? -1 : ayear === byear ? 0 : 1;\r\n });\r\n Vue.set(this.persistedData, 'schoolHistory', sorted);\r\n },\r\n async saveActivityEdit() {\r\n const isValid = await this.$validator.validateAll('activityEdit');\r\n if (!isValid) {\r\n const error = (this as any).errors.all('activityEdit')[0];\r\n Utils.toastError(error);\r\n return;\r\n }\r\n\r\n const activity = this.activityEdit;\r\n const key = activity.key;\r\n delete activity.key;\r\n const newPersist = this.persistedData.activities;\r\n newPersist[key] = activity;\r\n\r\n const sorted = (newPersist as IActivity[])\r\n .filter(act => act.activityName)\r\n .sort((a, b) => {\r\n if (!a.activityName) {\r\n return -1;\r\n }\r\n return a.activityName > b.activityName\r\n ? 1\r\n : a.activityName === b.activityName\r\n ? 0\r\n : -1;\r\n });\r\n Vue.set(this.persistedData, 'activities', sorted);\r\n },\r\n async saveEmploymentEdit() {\r\n const isValid = await this.$validator.validateAll('employmentEdit');\r\n if (!isValid) {\r\n const error = (this as any).errors.all('employmentEdit')[0];\r\n Utils.toastError(error);\r\n return;\r\n }\r\n\r\n const employment = this.employmentEdit;\r\n const key = employment.key;\r\n delete employment.key;\r\n const newPersist = this.persistedData.employmentHistory;\r\n newPersist[key] = employment;\r\n\r\n const sorted = (newPersist as IEmploymentHistory[])\r\n .filter(emp => emp.employerName)\r\n .sort((a, b) => {\r\n return a.startDate > b.startDate\r\n ? 1\r\n : a.startDate === b.startDate\r\n ? 0\r\n : -1;\r\n });\r\n Vue.set(this.persistedData, 'employmentHistory', sorted);\r\n },\r\n async saveRelativeEdit() {\r\n const isValid = await this.$validator.validateAll('relativeEdit');\r\n if (!isValid) {\r\n const error = (this as any).errors.all('relativeEdit')[0];\r\n Utils.toastError(error);\r\n return;\r\n }\r\n\r\n const relative = this.relativeEdit;\r\n const key = relative.key;\r\n delete relative.key;\r\n const newPersist = this.persistedData.relatives;\r\n\r\n if (newPersist) {\r\n newPersist[key] = relative;\r\n\r\n const sorted = (newPersist as IRelativeInfo[])\r\n .filter(rel => rel.lastName)\r\n .sort((a, b) => {\r\n if (!a.lastName) {\r\n return -1;\r\n }\r\n return a.lastName + ' ' + a.firstName >\r\n b.lastName + ' ' + b.firstName\r\n ? 1\r\n : a.lastName + ' ' + a.firstName ===\r\n b.lastName + ' ' + b.firstName\r\n ? 0\r\n : -1;\r\n });\r\n\r\n Vue.set(this.persistedData, 'relatives', sorted);\r\n }\r\n },\r\n schoolTypeMap(schoolType: string) {\r\n const types = {\r\n highSchool: 'High School',\r\n college: 'College',\r\n } as any;\r\n return types[schoolType] || '';\r\n },\r\n finalizePending() {\r\n return new Promise((resolve, reject) => {\r\n const editing: SectionIds[] = Object.keys(this.editing).filter(\r\n sect => this.editing[sect]\r\n ) as SectionIds[];\r\n\r\n editing.forEach(async sect => {\r\n const succeeded = await this.persistChanges(sect, false);\r\n if (succeeded === false) {\r\n const hasData =\r\n this.formData[sect] &&\r\n (this.formData[sect] as object)[0] &&\r\n Object.values((this.formData[sect] as object)[0]).some(\r\n val => !!val\r\n );\r\n\r\n if (!hasData) {\r\n this.cancelEdit(sect);\r\n }\r\n } else {\r\n this.cancelEdit(sect);\r\n }\r\n });\r\n\r\n this.$nextTick(resolve);\r\n });\r\n },\r\n async submitForm() {\r\n await this.finalizePending();\r\n this.persistChanges('personalInfo');\r\n\r\n if (!(window as any).DEVMODE) {\r\n const isValid = await this.$validator.validate();\r\n\r\n if (!isValid) {\r\n return;\r\n }\r\n }\r\n\r\n this.formErrors.submissionError = '';\r\n this.loading.formSubmission = true;\r\n this.loadFormToPersist();\r\n const timer = new LoadingHelper(1000);\r\n\r\n timer.onComplete = ( // tslint:disable-line\r\n res: ISubmitScholarshipFormResponse | AxiosError\r\n ) => {\r\n if ((res && (res as any).jwt) || (window as any).DEVMODE) {\r\n // @ts-ignore // typing is broken here for some reason\r\n const {\r\n jwt,\r\n scholarshipForm,\r\n }: { jwt: string; scholarshipForm: IScholarshipForm } = res;\r\n\r\n // Disable tslint here because it doesn't like the way Axios suggests we set the auth token\r\n /* tslint:disable:no-string-literal */\r\n axios.defaults.headers.common['Authorization'] = `Bearer ${jwt}`;\r\n /* tslint:enable:no-string-literal */\r\n\r\n store.setJwt(jwt);\r\n Vue.set(this, 'isAuthenticated', store.state.isAuthenticated);\r\n\r\n router.push('/submission');\r\n } else {\r\n const err = res as AxiosError;\r\n let errorMessage =\r\n 'Sorry, but an unknown error has occurred. Please try again later.';\r\n if (\r\n err.response &&\r\n err.response.data &&\r\n err.response.data.error === 'EmailInUse'\r\n ) {\r\n errorMessage =\r\n 'Sorry, an account already exists for that email address.';\r\n } else if (err.message === 'RelativeRequiredError') {\r\n errorMessage =\r\n 'At least one relative is required for non-member applicants';\r\n }\r\n this.formErrors.submissionError = errorMessage;\r\n Utils.toastError(errorMessage);\r\n }\r\n\r\n this.loading.formSubmission = false;\r\n };\r\n\r\n timer.onError = err => {\r\n this.loading.formSubmission = false;\r\n };\r\n\r\n timer.start();\r\n\r\n const applicant: Partial = this.persistedData.personalInfo;\r\n applicant.local = (this.persistedData.localInfo as ILocalInfo).number;\r\n const application: Partial = {\r\n activities: (this.persistedData.activities as IActivity[]) || [],\r\n employers:\r\n (this.persistedData.employmentHistory as IEmploymentHistory[]) || [],\r\n essayResponses: [{ text: this.persistedData.essayQuestion }],\r\n local: (this.persistedData.localInfo as ILocalInfo).number,\r\n memberRelatives:\r\n (this.persistedData.relatives as IRelativeInfo[]).filter(\r\n relative => relative.ssn\r\n ) || [],\r\n schools: (this.persistedData.schoolHistory as ISchoolHistory[]) || [],\r\n year: this.persistedData.year,\r\n id: this.persistedData.id,\r\n applicantId: (this.persistedData.personalInfo as IPersonalInfo).id,\r\n };\r\n\r\n if (\r\n this.persistedData.memberStatus === 'no' &&\r\n (!application.memberRelatives ||\r\n application.memberRelatives.length === 0)\r\n ) {\r\n timer.complete(new Error('RelativeRequiredError'));\r\n return;\r\n }\r\n\r\n const form: IScholarshipForm = { applicant, application };\r\n\r\n try {\r\n const submission = await axios.post(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/application`,\r\n form\r\n );\r\n timer.complete(submission.data);\r\n } catch (err) {\r\n timer.complete(err);\r\n }\r\n },\r\n toggleAllYearsParticipated(formId: string) {\r\n if (formId !== 'edit') {\r\n const value = (this.formData.activities[0] as IActivity)\r\n .yearsParticipated.length\r\n ? []\r\n : [1, 2, 3, 4];\r\n Vue.set(this.formData.activities[0], 'yearsParticipated', value);\r\n } else {\r\n const value = this.activityEdit.yearsParticipated.length\r\n ? []\r\n : [1, 2, 3, 4];\r\n Vue.set(this.activityEdit, 'yearsParticipated', value);\r\n }\r\n },\r\n toggleLoginForm() {\r\n this.showLoginForm = !this.showLoginForm;\r\n },\r\n async login() {\r\n const form: ILoginForm = this.loginFormData;\r\n try {\r\n const loginResponse = await axios.post(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/auth/applicantlogin`,\r\n form\r\n );\r\n const { jwt, applicant, currentApplication } = loginResponse.data;\r\n\r\n // Disable tslint here because it doesn't like the way Axios suggests we set the auth token\r\n /* tslint:disable:no-string-literal */\r\n axios.defaults.headers.common['Authorization'] = `Bearer ${jwt}`;\r\n /* tslint:enable:no-string-literal */\r\n\r\n store.setJwt(jwt);\r\n Vue.set(this, 'isAuthenticated', store.state.isAuthenticated);\r\n\r\n this.loadDataToForm({\r\n applicant,\r\n application: currentApplication,\r\n } as IScholarshipForm);\r\n } catch (err) {\r\n let msg =\r\n 'Sorry, but an unknown error has occurred. Please try again later.';\r\n if (\r\n err.response &&\r\n err.response.status === HttpStatusCode.Unauthorized\r\n ) {\r\n msg = 'Incorrect Login';\r\n }\r\n Utils.toastError(msg);\r\n }\r\n },\r\n setLanguage() {\r\n try {\r\n Utils.trySetLanguage();\r\n } catch (e) {\r\n localStorage.setItem(LocalStorageKeys.HAVE_SET_LANGUAGE, 'true');\r\n }\r\n },\r\n },\r\n mixins: [validatorComponent],\r\n name: 'Home',\r\n updated() {\r\n // prevent enter key from submitting forms\r\n this.$el.querySelectorAll('form').forEach(frm => {\r\n frm.onkeypress = e => {\r\n const key = e.charCode || e.keyCode || 0;\r\n if (key === 13) {\r\n e.preventDefault();\r\n }\r\n };\r\n });\r\n },\r\n watch: {\r\n 'formData.essayQuestion'(newVal, oldVal) {\r\n const wordLength = newVal.split(' ').length;\r\n\r\n if (wordLength > 500) {\r\n this.formData.essayQuestion = oldVal;\r\n }\r\n },\r\n 'formData.memberStatus'(newVal, oldVal) {\r\n if (newVal === 'no') {\r\n this.relativesRequired = true;\r\n } else {\r\n this.relativesRequired = false;\r\n }\r\n if (\r\n this.formData.memberStatus === 'no' &&\r\n this.persistedData.relatives &&\r\n (this.persistedData.relatives as any).filter(r => !!r.ssn).length === 0\r\n ) {\r\n this.editing.relatives = true;\r\n } else {\r\n this.editing.relatives = false;\r\n }\r\n },\r\n hasLoadedData(newVal, oldVal) {\r\n this.$nextTick(function() {\r\n if (newVal) {\r\n // Set up the address autocompletion\r\n this.addressAutocomplete = new google.maps.places.Autocomplete(\r\n (this.$refs.address as Vue).$refs.input\r\n );\r\n this.addressAutocomplete.setFields(['address_components']);\r\n this.addressAutocomplete.addListener(\r\n 'place_changed',\r\n this.handlePersonalPlaceSelection\r\n );\r\n }\r\n });\r\n },\r\n },\r\n});\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"section\"},[_c('div',{staticClass:\"section-header\"},[_c('h2',[_vm._v(\"\\n \"+_vm._s(_vm.header)+\"\\n \"),_c('span',[_vm._v(_vm._s(_vm.subheading))])]),(!_vm.$parent.hasLoadedData)?_c('loader'):(_vm.isEditable && !_vm.isEditing)?_c('button',{staticClass:\"btn btn--small\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.$emit('enable-edit', _vm.sectionId)}}},[(_vm.btnText === 'add')?_c('font-awesome-icon',{attrs:{\"icon\":\"plus\"}}):_vm._e(),(_vm.btnText === 'edit')?_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}):_vm._e(),_vm._v(\"\\n \"+_vm._s(_vm.btnText)+\"\\n \")],1):_vm._e()],1),(!!_vm.$slots.default)?_c('div',{staticClass:\"section-content\"},[_vm._t(\"default\")],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nimport Loader from '@/components/Loader.vue';\r\n\r\nexport default Vue.extend({\r\n components: {\r\n Loader,\r\n },\r\n // data() {\r\n // return {\r\n // loading: !this.$parent.hasLoadedData,\r\n // };\r\n // },\r\n name: 'FormSection',\r\n inject: ['$validator'],\r\n props: {\r\n btnText: {\r\n default: 'add',\r\n required: false,\r\n type: String,\r\n },\r\n header: {\r\n required: true,\r\n type: String,\r\n },\r\n isEditable: {\r\n type: Boolean,\r\n },\r\n isEditing: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n sectionId: {\r\n required: false,\r\n },\r\n subheading: {\r\n default: '',\r\n required: false,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSection.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormSection.vue?vue&type=template&id=07bddac0&scoped=true&\"\nimport script from \"./FormSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FormSection.vue?vue&type=style&index=0&id=07bddac0&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"07bddac0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{staticClass:\"header\"},[_c('div',{staticClass:\"hero\",attrs:{\"id\":\"maincontent\"}},[_c('div',{staticClass:\"inner\"},[_vm._m(0),_c('p',[_vm._v(\"A Better Life Through Your Union\")]),_c('a',{attrs:{\"href\":\"http://ufcwcharityfoundation.org/scholarship\",\"target\":\"_blank\"}},[_vm._v(\"\\n Scholarship Rules\\n \"),_c('font-awesome-icon',{staticClass:\"rules-after-icon\",attrs:{\"icon\":\"external-link-alt\"}})],1)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h1',[_vm._v(\"\\n UFCW Charity Foundation\\n \"),_c('br'),_vm._v(\"Scholarship Application\\n \")])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({\r\n name: 'Header',\r\n});\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=4f9b58ec&scoped=true&\"\nimport script from \"./Header.vue?vue&type=script&lang=ts&\"\nexport * from \"./Header.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Header.vue?vue&type=style&index=0&id=4f9b58ec&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4f9b58ec\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"select-input\",class:{ readonly: _vm.isDisabled, invalid: !_vm.isValid }},[_c('select',_vm._b({class:{ empty: !_vm.value },attrs:{\"name\":_vm.name,\"required\":_vm.required,\"disabled\":_vm.isDisabled,\"id\":_vm.id},domProps:{\"value\":_vm.value},on:{\"focus\":function($event){_vm.isFocused = true},\"blur\":function($event){_vm.isFocusd = false},\"change\":function($event){return _vm.$emit('input', $event.target.value)}}},'select',_vm.$attrs,false),[_c('option',{attrs:{\"disabled\":\"\",\"selected\":\"\",\"value\":\"\"}},[_vm._v(\"Select \"+_vm._s(_vm.label)+_vm._s(_vm.required ? '*' : ''))]),_vm._l((_vm.options),function(option){return _c('option',{key:option.value,attrs:{\"disabled\":option.disabled},domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.name || option.value))])})],2),(_vm.value)?_c('label',{class:{ 'has-value': _vm.value },attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.label)+_vm._s(_vm.required ? '*' : ''))]):_vm._e(),_c('div',{staticClass:\"underline\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\nexport default Vue.extend({\r\n computed: {\r\n isDisabled(): boolean {\r\n return this.readonly && !this.isFocused;\r\n },\r\n },\r\n data() {\r\n return {\r\n isFocused: false,\r\n };\r\n },\r\n name: 'SelectField',\r\n props: {\r\n id: {\r\n default: '',\r\n type: String,\r\n },\r\n label: {\r\n type: String,\r\n },\r\n name: {\r\n type: String,\r\n },\r\n options: {\r\n required: true,\r\n type: Array,\r\n },\r\n readonly: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n required: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n isValid: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n value: {\r\n default: '',\r\n type: String,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectField.vue?vue&type=template&id=63b693d8&scoped=true&\"\nimport script from \"./SelectField.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectField.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SelectField.vue?vue&type=style&index=0&id=63b693d8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"63b693d8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{invalid: !_vm.isValid},on:{\"click\":_vm.focusArea}},[_c('textarea',_vm._b({ref:\"textarea\",class:{valid: _vm.isValid, 'has-value': _vm.value},attrs:{\"name\":_vm.name,\"required\":_vm.required,\"type\":_vm.type,\"disabled\":_vm.isDisabled,\"id\":_vm.id},domProps:{\"value\":_vm.value},on:{\"focus\":function($event){_vm.isFocused = true},\"blur\":function($event){_vm.isFocused = false},\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},'textarea',_vm.$attrs,false)),_c('label',{attrs:{\"for\":_vm.id}},[_vm._v(_vm._s(_vm.label)+_vm._s(_vm.required ? '*' : ''))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\nexport default Vue.extend({\r\n computed: {\r\n isDisabled(): boolean {\r\n return this.readonly && !this.isFocused;\r\n },\r\n },\r\n data() {\r\n return {\r\n isFocused: false,\r\n $_veeValidate: {\r\n value() {\r\n return this.value;\r\n },\r\n name(): string {\r\n return (this as any).label || this.name;\r\n },\r\n },\r\n };\r\n },\r\n methods: {\r\n focusArea() {\r\n (this.$refs.textarea as HTMLTextAreaElement).focus();\r\n },\r\n },\r\n name: 'TextArea',\r\n props: {\r\n id: {\r\n default: '',\r\n type: String,\r\n },\r\n label: {\r\n type: String,\r\n },\r\n name: {\r\n type: String,\r\n },\r\n readonly: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n required: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n type: {\r\n default: '',\r\n type: String,\r\n },\r\n value: {\r\n default: '',\r\n type: String,\r\n },\r\n isValid: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextArea.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextArea.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TextArea.vue?vue&type=template&id=4fa52d0b&scoped=true&\"\nimport script from \"./TextArea.vue?vue&type=script&lang=ts&\"\nexport * from \"./TextArea.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TextArea.vue?vue&type=style&index=0&id=4fa52d0b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4fa52d0b\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=6fafc0fa&scoped=true&\"\nimport script from \"./Home.vue?vue&type=script&lang=ts&\"\nexport * from \"./Home.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=6fafc0fa&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6fafc0fa\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('transition',{attrs:{\"name\":\"page\"}},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({});\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainLayout.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainLayout.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MainLayout.vue?vue&type=template&id=1be14d48&\"\nimport script from \"./MainLayout.vue?vue&type=script&lang=ts&\"\nexport * from \"./MainLayout.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MainLayout.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page-wrapper\"},[_c('Navbar'),_c('hr'),(_vm.hasComeFromEmail)?_c('main',[_c('h3',[_vm._v(\"Enter a Password\")]),_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n required: true,\n regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]{6,}$/,\n }),expression:\"{\\n required: true,\\n regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[@$!%*?&])[A-Za-z\\\\d@$!%*?&]{6,}$/,\\n }\"}],attrs:{\"type\":\"password\",\"name\":\"password\",\"required\":\"\",\"label\":\"New Password\",\"isValid\":!_vm.errors.has('password'),\"data-vv-as\":\"Password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"space-between\",\"width\":\"100%\"}},[_c('span',{staticClass:\"help-text password-requirements\",class:{ error: _vm.errors.has('password') && _vm.fields.password.dirty }},[_vm._v(\"Password must contain at least:\\n \"),_vm._m(0)])]),_c('div',[_c('button',{staticClass:\"action-button submit-btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.errors.has('password')},on:{\"click\":_vm.resetPassword}},[(!_vm.loadingReset)?_c('span',[_vm._v(\"Reset Password\")]):_c('Loader')],1)])],1):_c('main',[(!_vm.hasSentEmail)?_c('div',[_c('h3',[_vm._v(\"Reset your password\")]),_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required|email'),expression:\"'required|email'\"}],attrs:{\"type\":\"text\",\"name\":\"email\",\"required\":\"\",\"label\":\"Email Address\",\"isValid\":!_vm.errors.has('email')},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_c('div',[_c('button',{staticClass:\"action-button submit-btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.errors.has('email')},on:{\"click\":_vm.sendResetEmail}},[(!_vm.loadingReset)?_c('span',[_vm._v(\"Send reset email\")]):_c('Loader')],1),_c('router-link',{staticClass:\"forgot-password-link\",attrs:{\"to\":\"/\"}},[_vm._v(\"Want to log in?\")])],1)],1):_c('div',[_c('p',[_vm._v(\"\\n An email has been sent to the provided address. Check your inbox for\\n further instructions.\\n \")])])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',[_c('li',[_vm._v(\"6 characters\")]),_c('li',[_vm._v(\"one uppercase and one lowercase letter\")]),_c('li',[_vm._v(\"one number and one symbol\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport axios from 'axios';\r\nimport Vue from 'vue';\r\n\r\nimport router from '../../router';\r\nimport { store } from '../../store';\r\nimport Utils from '../../Utils';\r\nimport LoadingHelper from '../../utils/loadingHelper';\r\n\r\nimport Loader from '../../components/Loader.vue';\r\nimport Navbar from '../../components/Navbar.vue';\r\nimport TextField from '../../components/TextField.vue';\r\n\r\nexport default Vue.extend({\r\n components: {\r\n Loader,\r\n Navbar,\r\n TextField,\r\n },\r\n computed: {\r\n hasComeFromEmail(): boolean {\r\n return !!(this.resetToken && this.resetEmail);\r\n },\r\n },\r\n data() {\r\n return {\r\n email: '',\r\n hasSentEmail: false,\r\n loadingReset: false,\r\n password: '',\r\n };\r\n },\r\n methods: {\r\n async resetPassword() {\r\n const isValid = await this.$validator.validate();\r\n if (!isValid) {\r\n Utils.toastError('New password is invalid.');\r\n return;\r\n }\r\n\r\n const timer = new LoadingHelper(1000);\r\n\r\n timer.onComplete = success => {\r\n this.loadingReset = false;\r\n\r\n if (success) {\r\n this.hasSentEmail = true;\r\n Utils.toastSuccess('Password reset successfully');\r\n\r\n store.setJwt(success);\r\n router.push('/');\r\n } else {\r\n Utils.toastError(\r\n 'An unknown error has occured. Please try again later.'\r\n );\r\n }\r\n };\r\n\r\n timer.onError = err => {\r\n Utils.toastError('An unknown error has occured. Try again later');\r\n };\r\n\r\n this.loadingReset = true;\r\n timer.start();\r\n\r\n try {\r\n const res = await axios.post(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/auth/passwordreset`,\r\n {\r\n email: this.resetEmail,\r\n token: this.resetToken,\r\n password: this.password,\r\n }\r\n );\r\n\r\n if (res.status) {\r\n timer.complete(res.data);\r\n } else {\r\n timer.complete(false);\r\n }\r\n } catch (err) {\r\n timer.complete(false);\r\n }\r\n },\r\n async sendResetEmail() {\r\n const isValid = await this.$validator.validate();\r\n if (!isValid) {\r\n Utils.toastError('Email is invalid');\r\n return;\r\n }\r\n\r\n const timer = new LoadingHelper(1000);\r\n\r\n timer.onComplete = success => {\r\n this.loadingReset = false;\r\n\r\n if (success) {\r\n this.hasSentEmail = true;\r\n } else {\r\n Utils.toastError(\r\n 'An unknown error has occured. Please try again later.'\r\n );\r\n }\r\n };\r\n\r\n timer.onError = err => {\r\n Utils.toastError('An unknown error has occured. Try again later');\r\n };\r\n\r\n this.loadingReset = true;\r\n timer.start();\r\n\r\n try {\r\n const res = await axios.post(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/auth/requestpasswordreset`,\r\n {\r\n email: this.email,\r\n }\r\n );\r\n\r\n if (res.status) {\r\n timer.complete(true);\r\n } else {\r\n timer.complete(false);\r\n }\r\n } catch (err) {\r\n timer.complete(false);\r\n }\r\n },\r\n },\r\n name: 'resetPassword',\r\n props: {\r\n resetToken: {\r\n type: String,\r\n default: '',\r\n },\r\n resetEmail: {\r\n type: String,\r\n default: '',\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResetPassword.vue?vue&type=template&id=2ee095a4&scoped=true&\"\nimport script from \"./ResetPassword.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResetPassword.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResetPassword.vue?vue&type=style&index=0&id=2ee095a4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2ee095a4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"site-wrap\"},[_c('Navbar'),_c('header',{staticClass:\"header\"},[_c('div',{staticClass:\"hero\",attrs:{\"id\":\"maincontent\"}},[_c('div',{staticClass:\"inner\"},[_c('div',{staticClass:\"success-header\"},[_c('svg',{staticClass:\"animated\",attrs:{\"id\":\"successAnimation\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"80\",\"height\":\"80\",\"viewBox\":\"0 0 70 70\"}},[_c('path',{attrs:{\"id\":\"successAnimationResult\",\"fill\":\"#D8D8D8\",\"d\":\"M35,60 C21.1928813,60 10,48.8071187 10,35 C10,21.1928813 21.1928813,10 35,10 C48.8071187,10 60,21.1928813 60,35 C60,48.8071187 48.8071187,60 35,60 Z M23.6332378,33.2260427 L22.3667622,34.7739573 L34.1433655,44.40936 L47.776114,27.6305926 L46.223886,26.3694074 L33.8566345,41.59064 L23.6332378,33.2260427 Z\"}}),_c('circle',{attrs:{\"id\":\"successAnimationCircle\",\"cx\":\"35\",\"cy\":\"35\",\"r\":\"24\",\"stroke\":\"#979797\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"fill\":\"transparent\"}}),_c('polyline',{attrs:{\"id\":\"successAnimationCheck\",\"stroke\":\"#979797\",\"stroke-width\":\"2\",\"points\":\"23 34 34 43 47 27\",\"fill\":\"transparent\"}})]),_vm._m(0)])])])]),_c('div',{staticClass:\"login-header\"},[_c('p',[_c('a',{staticClass:\"link\",on:{\"click\":_vm.logout}},[_c('font-awesome-icon',{staticStyle:{\"margin-right\":\"4px\"},attrs:{\"icon\":\"user\"}}),_vm._v(\"Log out of\\n this application\\n \")],1)])]),_c('main',{staticClass:\"success\"},[_c('p',{staticClass:\"instructions\"},[_vm._v(\"\\n Thank you for completing the online portion of the UFCW Charity\\n Foundation Scholarship. The second half of the application must be\\n completed offline and mailed in with your attached school transcripts.\\n Please download the Part B below. Your application will not be\\n considered complete until we have received your completed Part B and\\n school transcripts.\\n \")]),_c('div',{staticClass:\"inner\"},[_c('div',{staticClass:\"download-section\"},[_c('h2',[_vm._v(\"Download & Mail Part B\")]),_vm._m(1),_c('a',{staticClass:\"action-button hollow download-button\",attrs:{\"href\":\"/PartB_English_2024.pdf\",\"download\":\"Application.pdf\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\"  Download Part B\\n \")],1)]),_c('div',{staticClass:\"password-section section-entry existing-content\"},[(typeof _vm.hasSetPassword === 'undefined')?_c('div',{staticClass:\"password-loader\"},[_c('loader')],1):(_vm.hasSetPassword)?_c('div',[_c('h2',[_vm._v(\"Your password has already been set\")]),_c('br'),_c('router-link',{staticClass:\"forgot-password-link\",attrs:{\"to\":\"/reset\"}},[_vm._v(\"Forgot it?\")])],1):(!_vm.passwordHasReset)?_c('div',[_c('h2',[_vm._v(\"Enter a password\")]),_c('p',[_vm._v(\"to retrieve this application at a later time\")]),_c('TextField',{directives:[{name:\"validate\",rawName:\"v-validate\",value:({\n required: true,\n regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]{6,}$/,\n }),expression:\"{\\n required: true,\\n regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[@$!%*?&])[A-Za-z\\\\d@$!%*?&]{6,}$/,\\n }\"}],staticClass:\"form-input\",attrs:{\"name\":\"password\",\"label\":\"Password\",\"type\":\"password\",\"isValid\":!_vm.errors.has('password'),\"data-vv-as\":\"Password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"space-between\",\"width\":\"100%\"}},[_c('span',{staticClass:\"help-text password-requirements\",class:{\n error: _vm.errors.has('password') && _vm.fields.password.dirty,\n }},[_vm._v(\"\\n Password must contain at least:\\n \"),_vm._m(2)])]),_c('button',{staticClass:\"action-button submit-btn\",attrs:{\"disabled\":!_vm.password || _vm.errors.has('password'),\"type\":\"submit\"},on:{\"click\":_vm.resetPassword}},[(_vm.loadingPasswordReset)?_c('span',[_c('Loader',{staticClass:\"btn-loader\"})],1):_c('span',[_vm._v(\"Submit\")])])],1):_c('div',[_c('h3',[_vm._v(\"Your password has been set successfully\")])])])])]),_vm._m(3)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',[_vm._v(\"You're almost done!\")]),_c('h2',[_vm._v(\"\\n Part A has been submitted. To complete your application, please\\n download and mail Part B along with your school transcripts\\n \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"\\n Please send Part B to:\\n \"),_c('div',{staticClass:\"address\"},[_vm._v(\"\\n UFCW Charity Foundation Scholarship Program\\n \"),_c('br'),_vm._v(\"1775 K Street NW \"),_c('br'),_vm._v(\"Washington, DC 20006\\n \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',[_c('li',[_vm._v(\"6 characters\")]),_c('li',[_vm._v(\"one uppercase and one lowercase letter\")]),_c('li',[_vm._v(\"one number and one symbol\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"footer\"},[_c('div',{staticClass:\"inner\"},[_c('a',{staticClass:\"logo\",attrs:{\"href\":\"/\"}},[_c('img',{staticClass:\"logo__img\",attrs:{\"src\":require(\"@/assets/ufcw-cf-white.svg\"),\"height\":\"32\",\"width\":\"115\",\"alt\":\"\"}})]),_c('p',[_vm._v(\"\\n Copyright © 2018 The United Food and Commercial Workers International\\n Union (UFCW). All rights reserved.\\n \")])])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport axios, { AxiosError, AxiosResponse } from 'axios';\r\nimport Vue from 'vue';\r\n\r\nimport Loader from '../../components/Loader.vue';\r\nimport Navbar from '../../components/Navbar.vue';\r\nimport TextField from '../../components/TextField.vue';\r\n\r\nimport LoadingHelper from '../../utils/loadingHelper';\r\nimport validators from '../../utils/validators';\r\n\r\nimport { store } from '../../store';\r\nimport Utils from '../../Utils';\r\nimport { logout } from '../../utils/authUtils';\r\n\r\ninterface IResetPayload {\r\n password: string;\r\n token?: string;\r\n email?: string;\r\n}\r\n\r\nexport default Vue.extend({\r\n name: 'Submission',\r\n components: {\r\n Loader,\r\n Navbar,\r\n TextField,\r\n },\r\n created() {\r\n axios\r\n // @ts-ignore\r\n .get(`${process.env.VUE_APP_API_URI}/api/auth/hasSetPassword`)\r\n .then(res => {\r\n this.hasSetPassword = res.data;\r\n });\r\n },\r\n data() {\r\n return {\r\n password: '',\r\n loadingPasswordReset: false,\r\n passwordHasReset: false,\r\n hasSetPassword: undefined,\r\n };\r\n },\r\n methods: {\r\n logout() {\r\n logout();\r\n },\r\n async resetPassword() {\r\n if (await !this.$validator.validate()) {\r\n Utils.toastError('Invalid password');\r\n return;\r\n }\r\n\r\n this.loadingPasswordReset = true;\r\n const timer = new LoadingHelper(1000);\r\n timer.onComplete = (res: AxiosResponse | AxiosError) => {\r\n this.loadingPasswordReset = false;\r\n if (res instanceof Error) {\r\n Utils.toastError(\r\n (res.response && res.response.data.message) ||\r\n 'An error has occured'\r\n );\r\n } else if (res.status === 200) {\r\n this.password = '';\r\n this.passwordHasReset = true;\r\n Utils.toastSuccess('Password reset successfully');\r\n } else {\r\n Utils.toastError('An error has occurred');\r\n }\r\n };\r\n\r\n timer.onError = err => {\r\n this.loadingPasswordReset = false;\r\n Utils.toastError('An error has occurred');\r\n };\r\n\r\n timer.start();\r\n\r\n const payload: IResetPayload = {\r\n password: this.password,\r\n };\r\n\r\n if (this.resetToken && this.email) {\r\n payload.token = this.resetToken;\r\n payload.email = this.email;\r\n } else if (!store.state.isAuthenticated || !store.state.jwt) {\r\n Utils.toastError('An error has occurred. Please try again later.');\r\n }\r\n\r\n let req;\r\n\r\n try {\r\n req = await axios.post(\r\n // @ts-ignore\r\n `${process.env.VUE_APP_API_URI}/api/auth/passwordreset`,\r\n payload\r\n );\r\n } catch (err) {\r\n req = err as AxiosError;\r\n }\r\n\r\n timer.complete(req);\r\n },\r\n validatePassword: validators.validatePassword,\r\n },\r\n props: {\r\n resetToken: {\r\n required: false,\r\n type: String,\r\n },\r\n email: {\r\n required: false,\r\n type: String,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Submission.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Submission.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Submission.vue?vue&type=template&id=a6990ee4&scoped=true&\"\nimport script from \"./Submission.vue?vue&type=script&lang=ts&\"\nexport * from \"./Submission.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Submission.vue?vue&type=style&index=0&id=a6990ee4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a6990ee4\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nimport Utils from './Utils';\r\nimport { isAdmin, isAuthenticated } from './utils/authUtils';\r\nimport Home from './views/Main/Home.vue';\r\nimport MainLayout from './views/Main/MainLayout.vue';\r\nimport Reset from './views/Main/ResetPassword.vue';\r\nimport Submission from './views/Main/Submission.vue';\r\n\r\nconst AdminLogin = () => import('@/views/Admin/AdminLogin.vue');\r\nconst AdminHome = () => import('@/views/Admin/AdminHome.vue');\r\nconst AdminLayout = () => import('@/views/Admin/AdminLayout.vue');\r\n\r\nVue.use(Router);\r\n\r\nexport default new Router({\r\n base: process.env.BASE_URL,\r\n mode: 'history',\r\n scrollBehavior(to, from, savedPosition) {\r\n // TODO: Use vue transition hooks instead of hard-coding this time\r\n return new Promise((resolve, reject) => {\r\n setTimeout(() => {\r\n resolve({ x: 0, y: 0 });\r\n }, 500);\r\n });\r\n },\r\n routes: [\r\n {\r\n children: [\r\n {\r\n path: '/admin/login',\r\n name: 'adminLogin',\r\n component: AdminLogin,\r\n },\r\n {\r\n path: '',\r\n name: 'admin',\r\n component: AdminHome,\r\n beforeEnter: (to, from, next) => {\r\n if (isAdmin()) {\r\n next();\r\n } else if (isAuthenticated()) {\r\n Utils.toastShow(\"You don't have permission to view this page.\");\r\n next(from.fullPath);\r\n } else {\r\n next('/admin/login');\r\n }\r\n },\r\n },\r\n ],\r\n component: AdminLayout,\r\n path: '/admin',\r\n },\r\n {\r\n children: [\r\n {\r\n path: '/submission',\r\n name: 'submission',\r\n component: Submission,\r\n props: route => ({\r\n resetToken: route.query.t,\r\n email: route.query.e ? atob(decodeURIComponent((route.query as any).e)) : '',\r\n }),\r\n beforeEnter(to, from, next) {\r\n if (!isAuthenticated() && (!to.query.t || !to.query.e)) {\r\n next(from.fullPath);\r\n }\r\n next();\r\n },\r\n },\r\n {\r\n path: '/reset',\r\n name: 'reset password',\r\n component: Reset,\r\n props: route => ({\r\n resetToken: route.query.t,\r\n resetEmail: route.query.e\r\n ? atob(decodeURIComponent((route.query as any).e))\r\n : '',\r\n }),\r\n },\r\n { path: '', name: 'home', component: Home },\r\n ],\r\n component: MainLayout,\r\n path: '*',\r\n },\r\n ],\r\n});\r\n","export enum LocalStorageKeys {\r\n jwt = 'scholarship-jwt',\r\n HAVE_SET_LANGUAGE = 'have-set-language',\r\n}\r\n\r\nexport enum HttpStatusCode {\r\n Success = 200,\r\n Unauthorized = 401,\r\n}\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextArea.vue?vue&type=style&index=0&id=4fa52d0b&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPassword.vue?vue&type=style&index=0&id=2ee095a4&lang=scss&scoped=true&\"","import Vue from 'vue';\r\nimport { ToastOptions } from 'vue-toasted';\r\nimport { LocalStorageKeys } from './app.constants';\r\n\r\nexport default class Utils {\r\n public static readonly defaultToastConfig: ToastOptions = {\r\n theme: 'bubble',\r\n position: 'bottom-center',\r\n duration: 5000,\r\n singleton: true,\r\n action: {\r\n text: 'X',\r\n onClick: (e, toast) => {\r\n toast.goAway(0);\r\n },\r\n },\r\n };\r\n\r\n public static toQueryString = (obj: any) => {\r\n return Object.keys(obj)\r\n .map(key => {\r\n return key + '=' + obj[key];\r\n })\r\n .join('&');\r\n };\r\n\r\n public static fromQueryString = (queryString: string): object => {\r\n const params: any = {};\r\n let queries;\r\n let temp;\r\n let i;\r\n let l;\r\n queries = queryString.split('&');\r\n\r\n for (i = 0, l = queries.length; i < l; i++) {\r\n temp = queries[i].split('=');\r\n params[temp[0]] = temp[1];\r\n }\r\n return params;\r\n };\r\n\r\n public static toastShow = (message: string, config?: object) => {\r\n Vue.toasted.show(message || '', config || Utils.defaultToastConfig);\r\n };\r\n\r\n public static toastSuccess = (message: string, config?: object) => {\r\n Vue.toasted.success(message || '', config || Utils.defaultToastConfig);\r\n };\r\n\r\n public static toastError = (message: string, config?: object) => {\r\n Vue.toasted.error(message || '', config || Utils.defaultToastConfig);\r\n };\r\n public static jsonParse(jsonString: string): T | null {\r\n try {\r\n const object = JSON.parse(jsonString);\r\n return object as T;\r\n } catch (e) {\r\n return null;\r\n }\r\n }\r\n\r\n public static hasEmptyKey(obj: any) {\r\n if (!obj || Object.keys(obj).length === 0) {\r\n return true;\r\n }\r\n const hasUndefinedKey =\r\n Object.keys(obj).filter((key: string) => {\r\n return typeof obj[key] === 'undefined' || obj.key === '';\r\n }).length > 0;\r\n return hasUndefinedKey;\r\n }\r\n\r\n public static trySetLanguage = (): void => {\r\n const haveSetLanguage =\r\n localStorage.getItem(LocalStorageKeys.HAVE_SET_LANGUAGE) || '';\r\n const canSetLanguage = haveSetLanguage.toLowerCase().trim() !== 'true';\r\n\r\n if (canSetLanguage) {\r\n localStorage.setItem(LocalStorageKeys.HAVE_SET_LANGUAGE, 'true');\r\n\r\n let browserLanguage = navigator.language || '';\r\n browserLanguage = browserLanguage.toLowerCase().trim();\r\n\r\n if (browserLanguage.includes('es')) {\r\n document.cookie = 'googtrans=/en/es';\r\n } else if (browserLanguage.includes('zh')) {\r\n document.cookie = 'googtrans=/en/zh-CN';\r\n } else if (browserLanguage.includes('fr')) {\r\n document.cookie = 'googtrans=/en/fr';\r\n }\r\n }\r\n };\r\n\r\n public static formatPhoneNumber(phone: string): string {\r\n if (!phone) {\r\n return '';\r\n }\r\n const normalized = phone.replace(/[^\\d]/g, '');\r\n\r\n if (normalized.length === 10) {\r\n return phone.replace(/(\\d{3})(\\d{3})(\\d{4})/, '($1) $2-$3');\r\n }\r\n\r\n return normalized;\r\n }\r\n}\r\n\r\nexport const loadExternalScript = (\r\n scriptUrl: string,\r\n async: boolean = true\r\n) => {\r\n return new Promise((resolve, reject) => {\r\n const existingEl: HTMLScriptElement | null = document.querySelector(\r\n `[src='${scriptUrl}']`\r\n );\r\n if (existingEl) {\r\n if (existingEl.classList.contains('loading')) {\r\n const lastOnload = existingEl.onload;\r\n existingEl.onload = function(e) {\r\n if (lastOnload) {\r\n lastOnload.bind(this)(e);\r\n }\r\n resolve();\r\n };\r\n } else {\r\n resolve();\r\n }\r\n return;\r\n }\r\n\r\n const el = document.createElement('script');\r\n el.setAttribute('async', async ? 'async' : 'false');\r\n el.setAttribute('type', 'text/javascript');\r\n el.setAttribute('src', scriptUrl);\r\n el.classList.add('loading');\r\n el.onerror = reject;\r\n el.addEventListener('load', e => {\r\n el.classList.remove('loading');\r\n resolve();\r\n });\r\n if (document.head) {\r\n document.head.append(el);\r\n }\r\n });\r\n};\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectField.vue?vue&type=style&index=0&id=63b693d8&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=style&index=0&id=4f9b58ec&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/ufcw-charity-foundation.572c87b5.svg\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=style&index=0&id=7157bb1e&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=7d932c49&\"\nvar script = {}\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\r\n\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\nimport { faFacebookF, faTwitter } from '@fortawesome/free-brands-svg-icons';\r\nimport {\r\n faChevronDown,\r\n faComment,\r\n faExclamationTriangle,\r\n faExternalLinkAlt,\r\n faFileDownload,\r\n faFilePdf,\r\n faHistory,\r\n faInfoCircle,\r\n faPencilAlt,\r\n faPlus,\r\n faSearch,\r\n faShare,\r\n faSortAmountDown,\r\n faTable,\r\n faTimes,\r\n faTrashAlt,\r\n faUser,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';\r\n\r\n// Add all the icons we use to the icon library here (this enables tree-shaking)\r\nlibrary.add(faChevronDown);\r\nlibrary.add(faExclamationTriangle);\r\nlibrary.add(faExternalLinkAlt);\r\nlibrary.add(faTable);\r\nlibrary.add(faFilePdf);\r\nlibrary.add(faInfoCircle);\r\nlibrary.add(faPencilAlt);\r\nlibrary.add(faPlus);\r\nlibrary.add(faTrashAlt);\r\nlibrary.add(faSearch);\r\nlibrary.add(faUser);\r\nlibrary.add(faFileDownload);\r\nlibrary.add(faSortAmountDown);\r\nlibrary.add(faShare);\r\nlibrary.add(faComment);\r\nlibrary.add(faTimes);\r\nlibrary.add(faHistory);\r\n\r\n// Brand icons\r\nlibrary.add(faFacebookF);\r\nlibrary.add(faTwitter);\r\n\r\nVue.component('font-awesome-icon', FontAwesomeIcon);\r\n","import { LocalStorageKeys } from '@/app.constants';\r\nimport { store } from '@/store';\r\nimport Utils from '@/Utils';\r\nimport PhoneNumber from 'awesome-phonenumber';\r\nimport axios from 'axios';\r\nimport PortalVue from 'portal-vue';\r\nimport VeeValidate, { Validator } from 'vee-validate';\r\nimport Vue from 'vue';\r\nimport VModal from 'vue-js-modal';\r\nimport VueTheMask from 'vue-the-mask';\r\nimport Toasted from 'vue-toasted';\r\nimport App from './App.vue';\r\nimport router from './router';\r\nimport './utils/iconHelper';\r\n\r\nconst search: string = location.search;\r\nif (search.indexOf('token')) {\r\n const query: any = Utils.fromQueryString(location.search.substring(1));\r\n if (query.token) {\r\n localStorage.setItem(LocalStorageKeys.jwt, query.token);\r\n store.setJwt(query.token);\r\n\r\n history.replaceState({}, '', window.location.href.split('?')[0]);\r\n }\r\n}\r\n\r\nconst token = localStorage.getItem(LocalStorageKeys.jwt);\r\n\r\n// set default axios headers\r\nif (token) {\r\n axios.defaults.headers.common.Authorization = `Bearer ${token}`;\r\n}\r\n\r\nconst phoneNumber = {\r\n // getMessage: field => `Please enter a valid phone number`,\r\n validate(value: number) {\r\n return new Promise(resolve => {\r\n const phone = new PhoneNumber('+1' + value);\r\n resolve({ valid: phone.isValid() });\r\n });\r\n },\r\n};\r\n\r\nVue.config.productionTip = false;\r\nVue.use(VeeValidate);\r\n// We gotta ignore this for some reason. Maybe it'll be fixed when a new version is released.\r\n// @ts-ignore\r\nVue.use(Toasted);\r\nVue.use(VueTheMask);\r\nVue.use(PortalVue);\r\nVue.use(VModal);\r\n\r\nValidator.extend('phoneNumber', (phoneNumber as any));\r\n\r\nnew Vue({\r\n render: h => h(App),\r\n router,\r\n}).$mount('#app');\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',[_c('div',{staticClass:\"flex justify-between\"},[_vm._m(0),_c('button',{staticClass:\"inline-block sm:hidden btn bg-transparent\",on:{\"click\":_vm.showShare}},[_vm._v(\"\\n Share\\n \"),_c('font-awesome-icon',{attrs:{\"icon\":\"share\"}})],1)]),_c('div',{staticClass:\"nav-buttons sm:items-center\"},[_c('a',{staticClass:\"btn inline-block\",attrs:{\"href\":\"http://ufcw.org\",\"target\":\"_blank\"}},[_vm._v(\"Visit UFCW.org\")]),_c('a',{staticClass:\"btn inline-block\",attrs:{\"href\":\"http://ufcwcharityfoundation.org\",\"target\":\"_blank\"}},[_vm._v(\"Visit Foundation\")]),_c('div',{staticClass:\"hidden sm:inline-block w-px bg-gray-300 text-sm h-6 ml-4 mr-3 align-middle\"}),_c('button',{staticClass:\"btn hidden sm:inline-block bg-blue-200 md:bg-transparent border-solid border-blue-300 border\",on:{\"click\":_vm.showShare}},[_vm._v(\"\\n Share\\n \"),_c('font-awesome-icon',{attrs:{\"icon\":\"share\"}})],1)]),_c('modal',{attrs:{\"name\":\"share\",\"width\":_vm.windowWidth <= 640 ? '80%' : 384,\"height\":\"auto\"}},[_c('div',{staticClass:\"flex justify-between items-center py-4 px-10 mb-4 border-0 border-b border-solid border-gray-300\"},[_c('h2',{staticClass:\"text-gray-800 border\"},[_vm._v(\"Share via...\")]),_c('button',{staticClass:\"bg-transparent\",on:{\"click\":_vm.hideShare}},[_c('font-awesome-icon',{staticClass:\"mr-4 text-gray-600 text-2xl\",attrs:{\"icon\":\"times\"}})],1)]),_c('div',{staticClass:\"flex flex-col items-center pt-0 px-10 pb-8 sm:pt-2\"},[_c('a',{staticClass:\"bg-fb-blue focus:bg-blue-800 text-center w-full rounded-full text-white font-bold px-4 mb-2 no-underline text-sm\",attrs:{\"href\":\"https://www.facebook.com/sharer/sharer.php?u=scholarship.ufcw.org\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{staticClass:\"mr-2\",attrs:{\"icon\":['fab', 'facebook-f']}}),_vm._v(\"Facebook\\n \")],1),_c('a',{staticClass:\"bg-twitter-blue focus:bg-blue-700 text-center w-full rounded-full text-white font-bold px-4 mb-2 no-underline text-sm\",attrs:{\"href\":\"https://twitter.com/intent/tweet?text=Sign up for the UFCW Scholarship at scholarship.ufcw.org!\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{staticClass:\"mr-2\",attrs:{\"icon\":['fab', 'twitter']}}),_vm._v(\"Twitter\\n \")],1),(_vm.canShare())?_c('button',{staticClass:\"bg-gray-400 focus:bg-gray-500 text-center py-2 w-full rounded-full text-gray-700 font-bold px-4 mb-2 no-underline text-left text-sm\",on:{\"click\":_vm.share}},[_c('font-awesome-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"share\"}}),_vm._v(\"Other\\n \")],1):_vm._e(),_c('div',{staticClass:\"w-full mt-4 flex items-center\"},[_c('div',{staticClass:\"flex-1\"},[_c('TextField',{attrs:{\"name\":\"emailOrSms\",\"label\":\"SMS / Email\",\"placeholder\":\"Phone Number or Email\",\"isValid\":_vm.recipientError === undefined},model:{value:(_vm.shareRecipient),callback:function ($$v) {_vm.shareRecipient=$$v},expression:\"shareRecipient\"}})],1),_c('button',{staticClass:\"px-4 h-12 rounded-r uppercase text-gray-700 focus:bg-gray-400 tracking-wide\",on:{\"click\":_vm.shareSmsOrEmail}},[(_vm.loadingShare)?_c('span',[_c('Loader')],1):_c('span',[_vm._v(\"Send\")])])]),(_vm.recipientError !== undefined)?_c('div',{staticClass:\"text-red-600 self-start leading-none\"},[_vm._v(_vm._s(_vm.recipientError))]):_vm._e(),_c('div',{staticClass:\"w-full mt-4 flex items-center\"},[_c('div',{staticClass:\"flex-1\"},[_c('TextField',{attrs:{\"name\":\"url\",\"label\":\"Share Link\",\"value\":_vm.getUrl,\"readonly\":\"\"}})],1),_c('button',{staticClass:\"px-4 h-12 rounded-r uppercase text-gray-700 focus:bg-gray-400 tracking-wide\",on:{\"click\":_vm.copyLink}},[_vm._v(\"Copy\")])])])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:\"logo\",attrs:{\"href\":\"/\"}},[_c('img',{staticClass:\"logo__img\",attrs:{\"src\":require(\"@/assets/ufcw-charity-foundation.svg\"),\"height\":\"34\",\"width\":\"125\",\"alt\":\"UFCW\"}})])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Loader from '@/components/Loader.vue';\r\nimport TextField from '@/components/TextField.vue';\r\nimport axios from 'axios';\r\nimport Vue from 'vue';\r\n\r\ninterface Data {\r\n shareRecipient: string;\r\n recipientError: string | undefined;\r\n loadingShare: boolean;\r\n}\r\n\r\nexport default Vue.extend({\r\n name: 'Navbar',\r\n components: {\r\n TextField,\r\n Loader,\r\n },\r\n computed: {\r\n getUrl(): string {\r\n return window.location.origin;\r\n },\r\n windowWidth(): number {\r\n return window.innerWidth;\r\n },\r\n },\r\n data(): Data {\r\n return {\r\n shareRecipient: '',\r\n recipientError: undefined,\r\n loadingShare: false,\r\n };\r\n },\r\n methods: {\r\n canShare() {\r\n const canShare = (navigator as any).share !== undefined;\r\n return canShare;\r\n },\r\n showShare() {\r\n this.$modal.show('share');\r\n },\r\n hideShare() {\r\n this.$modal.hide('share');\r\n },\r\n async share() {\r\n const shareData = {\r\n title: 'UFCW Scholarship',\r\n text: 'Sign up for the UFCW Scholarship program',\r\n url: window.location.origin,\r\n };\r\n\r\n try {\r\n await (navigator as any).share(shareData);\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n },\r\n async shareSmsOrEmail() {\r\n const send = async (recipient: string) => {\r\n this.loadingShare = true;\r\n return await axios\r\n .post(`${process.env.VUE_APP_API_URI}/api/application/share`, {\r\n recipient,\r\n })\r\n .then(res => {\r\n Vue.toasted.success(`Shared to ${this.shareRecipient}`, {\r\n duration: 5000,\r\n });\r\n\r\n this.shareRecipient = '';\r\n this.loadingShare = false;\r\n })\r\n .catch(e => {\r\n console.error(e);\r\n Vue.toasted.error(\r\n `Something went wrong sharing to ${this.shareRecipient}`\r\n );\r\n\r\n this.loadingShare = false;\r\n });\r\n };\r\n\r\n this.recipientError = undefined;\r\n\r\n if (!this.shareRecipient) {\r\n this.recipientError = 'Invalid recipient';\r\n } else if (this.shareRecipient.includes('@')) {\r\n send(this.shareRecipient);\r\n } else {\r\n const num = this.shareRecipient.replace(/[^\\d]/, '');\r\n\r\n if (num.length < 10) {\r\n this.recipientError = 'Invalid phone number';\r\n return;\r\n }\r\n\r\n send(num);\r\n }\r\n },\r\n async copyLink() {\r\n const success = () => {\r\n Vue.toasted.success('Link copied to clipboard', {\r\n duration: 3000,\r\n });\r\n };\r\n try {\r\n if (navigator.clipboard) {\r\n await navigator.clipboard.writeText(this.getUrl);\r\n success();\r\n } else {\r\n const input = document.createElement('input');\r\n input.value = this.getUrl;\r\n document.body.appendChild(input);\r\n input.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(input);\r\n success();\r\n }\r\n } catch (e) {\r\n Vue.toasted.error(\r\n \"Failed to copy link to clipboard. Try copying from your browser's search box.\",\r\n {\r\n duration: 5000,\r\n }\r\n );\r\n }\r\n },\r\n },\r\n watch: {\r\n shareRecipient() {\r\n this.recipientError = undefined;\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Navbar.vue?vue&type=template&id=797c63b0&scoped=true&\"\nimport script from \"./Navbar.vue?vue&type=script&lang=ts&\"\nexport * from \"./Navbar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Navbar.vue?vue&type=style&index=0&id=797c63b0&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"797c63b0\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=6409b56f&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/ufcw-cf-white.96097113.svg\";","import jwtDecode from 'jwt-decode';\r\nimport { LocalStorageKeys } from '../app.constants';\r\nimport { store } from '../store';\r\nimport Utils from '../Utils';\r\n\r\nexport interface IToken {\r\n regions: string[];\r\n userName: string;\r\n role: string;\r\n userId: string;\r\n}\r\n\r\nexport function logout() {\r\n localStorage.removeItem(LocalStorageKeys.jwt);\r\n window.location.assign('/');\r\n // window.location.assign(process.env.VUE_APP_LOGIN_URI);\r\n}\r\n\r\nexport function isAuthenticated() {\r\n return store.state.isAuthenticated;\r\n}\r\n\r\nexport function isAdmin() {\r\n return (store.state.token as IToken).role === 'Admin';\r\n}\r\n\r\nexport function decodeToken(jwt: string): IToken | {} {\r\n let token;\r\n try {\r\n token = jwtDecode(jwt);\r\n } catch (error) {\r\n // disregard if broken token\r\n }\r\n\r\n if (token) {\r\n const userId = token.sub;\r\n const userName = token.username;\r\n const regionsJson = token.regions;\r\n const userRole =\r\n token['http://schemas.microsoft.com/ws/2008/06/identity/claims/role'];\r\n return {\r\n regions: Utils.jsonParse(regionsJson) || [],\r\n role: userRole,\r\n userId: userId || '',\r\n userName: userName || '',\r\n };\r\n }\r\n\r\n return {};\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-input\",class:{ readonly: _vm.isDisabled, invalid: !_vm.isValid },on:{\"click\":_vm.activateInput}},[(_vm.mask)?_c('the-mask',_vm._b({ref:\"input\",attrs:{\"autocomplete\":_vm.autocomplete,\"name\":_vm.name,\"pattern\":_vm.pattern,\"required\":_vm.required,\"type\":_vm.internalType,\"value\":_vm.value,\"disabled\":_vm.isDisabled,\"placeholder\":_vm.isFocused\n ? _vm.placeholder\n ? _vm.placeholder\n : _vm.type === 'date'\n ? 'MM/dd/yyyy'\n : ' '\n : '',\"mask\":_vm.mask,\"masked\":_vm.masked,\"tokens\":_vm.tokens},on:{\"input\":_vm.handleInput},nativeOn:{\"focus\":function($event){return _vm.onFocus($event)},\"blur\":function($event){return _vm.onBlur($event)}}},'the-mask',_vm.$attrs,false)):_c('input',_vm._b({ref:\"input\",attrs:{\"autocomplete\":_vm.autocomplete,\"name\":_vm.name,\"pattern\":_vm.pattern,\"required\":_vm.required,\"type\":_vm.internalType,\"disabled\":_vm.isDisabled,\"placeholder\":_vm.isFocused\n ? _vm.placeholder\n ? _vm.placeholder\n : _vm.type === 'date'\n ? 'MM/dd/yyyy'\n : ' '\n : ''},domProps:{\"value\":_vm.value},on:{\"focus\":_vm.onFocus,\"blur\":_vm.onBlur,\"input\":function($event){return _vm.handleInput($event.target.value)}}},'input',_vm.$attrs,false)),_c('label',{class:{ invalid: !_vm.isValid, 'has-value': _vm.value },on:{\"click\":_vm.activateInput}},[_vm._v(_vm._s(_vm.label)+_vm._s(_vm.required ? '*' : ''))]),_c('div',{staticClass:\"underline\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\nimport { Prop } from 'vue/types/options';\r\n\r\nexport default Vue.extend({\r\n computed: {\r\n isDisabled(): boolean {\r\n return this.readonly && !this.isFocused;\r\n },\r\n },\r\n data() {\r\n return {\r\n internalType: this.type === 'date' ? 'tel' : this.type, // Hack: Disable browser masks\r\n isFocused: false,\r\n tokens: {\r\n '#': { pattern: /\\d/ },\r\n '^': { pattern: /[\\d●]/ },\r\n X: { pattern: /[0-9a-zA-Z]/ },\r\n S: { pattern: /[a-zA-Z]/ },\r\n A: { pattern: /[a-zA-Z]/, transform: v => v.toLocaleUpperCase() },\r\n a: { pattern: /[a-zA-Z]/, transform: v => v.toLocaleLowerCase() },\r\n '!': { escape: true },\r\n },\r\n $_veeValidate: {\r\n value: () => {\r\n return this.value;\r\n },\r\n name: () => {\r\n return this.label || this.name;\r\n },\r\n },\r\n };\r\n },\r\n inheritAttrs: false,\r\n methods: {\r\n activateInput() {\r\n if ((this.$refs.input as Vue).$el) {\r\n ((this.$refs.input as Vue).$el as HTMLInputElement).focus();\r\n } else if ((this as any).$refs.input) {\r\n (this as any).$refs.input.focus();\r\n }\r\n },\r\n onBlur() {\r\n this.$data.isFocused = false;\r\n this.$emit('blur');\r\n },\r\n onFocus() {\r\n this.$data.isFocused = true;\r\n this.$emit('focus');\r\n },\r\n handleInput(value) {\r\n this.$emit('input', value);\r\n },\r\n },\r\n props: {\r\n autocomplete: {\r\n default: '',\r\n type: String,\r\n },\r\n label: {\r\n required: true,\r\n type: String as Prop,\r\n },\r\n name: {\r\n required: true,\r\n type: String,\r\n },\r\n pattern: {\r\n type: String,\r\n default: undefined,\r\n },\r\n placeholder: {\r\n type: String,\r\n default: undefined,\r\n },\r\n readonly: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n required: {\r\n default: false,\r\n type: Boolean,\r\n },\r\n type: {\r\n default: '',\r\n type: String,\r\n },\r\n validator: {\r\n default() {\r\n return val => !!val;\r\n },\r\n type: (Function as unknown) as Prop<() => boolean>,\r\n },\r\n value: {\r\n default: '',\r\n },\r\n isValid: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n mask: {\r\n type: String,\r\n default: '',\r\n },\r\n masked: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n },\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TextField.vue?vue&type=template&id=7157bb1e&scoped=true&\"\nimport script from \"./TextField.vue?vue&type=script&lang=ts&\"\nexport * from \"./TextField.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TextField.vue?vue&type=style&index=0&id=7157bb1e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7157bb1e\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}