/loan-enquiry/app/eligibility\nconst i = location.pathname.toLowerCase().indexOf(__webpack_public_path__);\nconst locale = location.pathname.substring(0, i);\nlet routerBasePath = locale + __webpack_public_path__;\n\nconst router = createRouter({\n history: createWebHistory(routerBasePath),\n routes,\n scrollBehavior(to, from, savedPosition) {\n if (savedPosition) {\n return savedPosition;\n } else {\n if (to.matched.every((record, i) => from.matched[i] !== record))\n return { x: 0, y: 0 };\n }\n // leave scroll as it is by not returning anything\n // https://github.com/Microsoft/TypeScript/issues/18319\n\n return false \n },\n});\n\nlet isInitialNavigation = true; // Flag to track initial navigation\n\nrouter.beforeEach((to, from, next) => {\n const whitelist = [routerNames.Home, routerNames.DocPackUpload, routerNames.Payment];\n const requestedPath = to.name;\n\n if (isInitialNavigation && ( !whitelist.includes(requestedPath) ||\n ( requestedPath == routerNames.Home && window._inputs == undefined || window._inputs.inputModule == undefined ) || \n ( requestedPath === routerNames.Payment && to.query.s == undefined ) )) {\n isInitialNavigation = false; // Reset flag after first navigation\n genericUtils.redirectToStart(); // Block only on initial navigation (user entering URL) and not in-app navigation\n } else {\n isInitialNavigation = false; // Reset flag after first navigation\n next(); // Allow navigation normally for all other cases\n }\n});\n\nrouter.afterEach(() => {\n document.title = window != null && window._inputs != null && window._inputs.inputGlobal != null ? window._inputs.inputGlobal.cuName : `${generic.OpenModuleTitle}`;\n});\n\nexport default router;\n","__webpack_public_path__ = window.location.pathname === '/' || process.env.NODE_ENV === 'development' \n ? '/'\n : `/${window.location.pathname.split('/')[1]}/`;","/// Route names\nexport default {\n Home: 'Eligible',\n MemberNonMember: 'Member Non Member',\n Payment: 'Payment',\n ConfirmMembership: 'Confirm Membership',\n ValidateMobile: 'Validate Mobile',\n EnquiryForm: 'Enquiry Form',\n OpenEnquiry: 'Open Enquiry',\n DocPackUpload: 'DocPackUpload',\n Timeout: 'Timeout',\n 404: '404',\n Error: 'Error'\n};","import { defineStore } from 'pinia'\r\nimport { service } from './service.js';\r\nimport constants from '../constants/generic.js';\r\nimport opmGeneric from '../utils/generic.js';\r\n\r\nconst getDefaultState = () => ({\r\n loanEnquiryConfig: {},\r\n loanEnquiryData: {},\r\n elsConfig: {\r\n lstLabel: {},\r\n lstInUse: {},\r\n lstRequired: {},\r\n lstHelperText: {},\r\n },\r\n paymentConfirmed: false,\r\n });\r\n \r\nexport const useLoanEnquiryStore = defineStore('LoanEnquiryStore', {\r\n state: getDefaultState,\r\n persist: true,\r\n getters: {\r\n referenceData: state => { return state.loanEnquiryConfig.ReferenceData; },\r\n elementsConfig: state => { return state.elsConfig; },\r\n },\r\n actions: {\r\n async loadLoanEnquiryConfig() {\r\n // When refreshing the app the configuration is already loaded, no need to load it again\r\n if (Object.keys(this.loanEnquiryConfig).length != 0) return { LoanEnquiryConfig: this.loanEnquiryConfig };\r\n\r\n const config = await service.getLoanEnquiryConfig();\r\n if (config?.Response?.StatusCode !== 0) {\r\n return config;\r\n }\r\n this.loanEnquiryConfig = config.LoanEnquiryConfig;\r\n // Parse field configuration for \"Child.Components\"\r\n if (config.LoanEnquiryConfig.FieldsConfiguration) {\r\n const isPrimaryLang = opmGeneric.isPrimaryLang();\r\n config.LoanEnquiryConfig.FieldsConfiguration.forEach(el => {\r\n this.elsConfig.lstInUse[el.Name] = true; // Only InUse fields are returned\r\n this.elsConfig.lstRequired[el.Name] = el.Required;\r\n this.elsConfig.lstLabel[el.Name] = isPrimaryLang ? el.Label : el.LabelLang2;\r\n \r\n // HelperText support for \"Param.*\"\r\n let text = isPrimaryLang ? el.HelperText : el.HelperTextLang2;\r\n if (text === null || text === undefined || text === '') return '';\r\n if (text.indexOf(\"{CUInfo.\") !== -1) Object.entries(this.loanEnquiryConfig.CreditUnionInfo).forEach(p => text = text.replaceAll(\"{CUInfo.\".concat(p[0], \"}\"), p[1]));\r\n if (text.indexOf(\"{Param.\") !== -1) this.loanEnquiryConfig.Params.forEach(p => text = text.replaceAll(\"{Param.\".concat(p.Name, \"}\"), p.Value));\r\n if (text.indexOf(\"{Setting.\") !== -1) this.loanEnquiryConfig.ReferenceData.SystemSettings.forEach(p => text = text.replaceAll(\"{Setting.\".concat(p.Name, \"}\"), p.Value));\r\n this.elsConfig.lstHelperText[el.Name] = text;\r\n });\r\n }\r\n \r\n return config;\r\n },\r\n\r\n updateLocalLoanEnquiryData(payload) {\r\n this.loanEnquiryData = Object.assign(this.loanEnquiryData, payload);\r\n },\r\n\r\n updateLoanEnquiryConfig(payload) {\r\n this.loanEnquiryConfig = Object.assign(this.loanEnquiryConfig, payload);\r\n },\r\n\r\n async saveLoanEnquiry(payload) {\r\n this.updateLocalLoanEnquiryData(payload);\r\n const resp = await service.saveLoanEnquiry(this.loanEnquiryData);\r\n if (resp.ReturnedErrorCode === constants.LOAN_ENQUIRY_SUCCESS) {\r\n // Store DocPack in state\r\n this.loanEnquiryConfig = Object.assign(this.loanEnquiryConfig, { \r\n AccessToken: resp.AccessToken,\r\n DocPack: resp.MemAppDocumentPackDetailList, \r\n DocumentPackComplete: resp.DocumentPackComplete,\r\n EncodedQueryString: resp.EncodedQueryString,\r\n IdentityVerificationStatus: resp.IdentityVerificationStatus, \r\n MembershipApplicationStatus_Status: resp.MembershipApplicationStatus_Status,\r\n Consent: resp.Consent,\r\n ConsentText: resp.ConsentText,\r\n ConsentTextID: resp.ConsentTextID\r\n });\r\n\r\n this.loanEnquiryData.AccessToken = resp.AccessToken;\r\n }\r\n\r\n return resp;\r\n },\r\n\r\n async checkEligibility(payload) {\r\n this.updateLocalLoanEnquiryData(payload);\r\n return await service.checkEligibility(payload);\r\n },\r\n\r\n async otpValidate(payload) {\r\n this.updateLocalLoanEnquiryData(payload);\r\n const resp = await service.otpValidate(payload);\r\n if (resp.Response.StatusCode === constants.LOAN_ENQUIRY_SUCCESS) {\r\n // Store Token.TokenId in state\r\n this.updateLocalLoanEnquiryData({ AccessToken : resp.Token.TokenId });\r\n\r\n this.loanEnquiryConfig = Object.assign(this.loanEnquiryConfig, { \r\n AccessToken: resp.Token.TokenId,\r\n DocPack: resp.LoanEnquiry.MemAppDocumentPackDetailList, \r\n DocumentPackComplete: resp.LoanEnquiry.DocumentPackComplete,\r\n EncodedQueryString: resp.LoanEnquiry.EncodedQueryString,\r\n IdentityVerificationStatus: resp.LoanEnquiry.IdentityVerificationStatus, \r\n MembershipApplicationStatus_Status: resp.LoanEnquiry.MembershipApplicationStatus_Status,\r\n Consent: resp.LoanEnquiry.Consent,\r\n ConsentText: resp.LoanEnquiry.ConsentText,\r\n ConsentTextID: resp.LoanEnquiry.ConsentTextID\r\n });\r\n }\r\n return resp;\r\n },\r\n\r\n async requestOpen(payload) {\r\n this.updateLocalLoanEnquiryData(payload);\r\n const resp = await service.requestOpen(payload);\r\n \r\n return resp;\r\n },\r\n\r\n async openEnquiry(payload) { \r\n this.updateLocalLoanEnquiryData(payload);\r\n const resp = await service.openEnquiry(payload);\r\n \r\n this.loanEnquiryConfig = Object.assign(this.loanEnquiryConfig, { DocPack: resp.MemAppDocumentPackDetailList, \r\n IdentityVerificationStatus: resp.IdentityVerificationStatus, \r\n DocumentPackComplete: resp.DocumentPackComplete, \r\n MembershipApplicationStatus_Status: resp.MembershipApplicationStatus_Status });\r\n \r\n this.loanEnquiryData.AccessToken = resp.AccessToken;\r\n \r\n return resp;\r\n },\r\n\r\n async enquiryDoc(payload) {\r\n const body = {\r\n EncodedQueryString: payload.EncodedQueryString,\r\n AccessToken: this.loanEnquiryData.AccessToken,\r\n DocumentTypeID: payload.docPackInfo.DocumentType_ID,\r\n DocumentPackDetailID: payload.docPackInfo.MemberDocumentPackDetailID,\r\n Documents: payload.docPackFiles\r\n };\r\n \r\n return await service.enquiryDoc(body);\r\n },\r\n\r\n async enquiryIdVerification(payload) { \r\n const body = {\r\n EncodedQueryString: payload.EncodedQueryString,\r\n AccessToken: this.loanEnquiryData.AccessToken,\r\n ConsentBiometric: payload.ConsentBiometric,\r\n ConsentPhoto: payload.ConsentPhoto,\r\n ConsentTextID: payload.ConsentTextID,\r\n RequestBody: {\r\n \"CustomerInternalReference\": \"\",\r\n \"WorkflowDefinition\": {\r\n \"Key\": \"\",\r\n \"Credentials\": [\r\n {\r\n \"Category\": \"ID\",\r\n \"Type\": {\r\n \"PredefinedType\": \"DEFINED\",\r\n \"Values\": [\"PASSPORT\", \"DRIVING_LICENSE\", \"ID_CARD\"]\r\n }\r\n }\r\n ]\r\n },\r\n \"ReportingCriteria\": \"\",\r\n \"CallbackUrl\": \"\",\r\n \"UserReference\": \"\"\r\n }\r\n };\r\n \r\n return await service.enquiryIdVerification(body);\r\n },\r\n\r\n confirmPayment() {\r\n this.paymentConfirmed = true;\r\n },\r\n \r\n resetState () {\r\n // Merge rather than replace so we don't lose observers\r\n // https://github.com/vuejs/vuex/issues/1118\r\n Object.assign(this, getDefaultState());\r\n },\r\n }\r\n})","import axios from 'axios';\n\nexport default axios.create({\n baseURL: process.env.VUE_APP_API_BASE_URL,\n timeout: 50000, // miliseconds\n maxContentLength: -1,\n headers: {\n 'Content-Type': 'application/json',\n // TODO: Create needed headers to OPEN_MODULES_API\n // TODO: Certificate usage (?)\n }\n});","// EndPoint names for the Loan-Enquiry open-module\nexport default {\n\n apiRoot: 'api/loan-enquiry/',\n\n // Actions\n LOAN_ENQUIRY_CONFIGURATION_READ: 'configuration',\n LOAN_ENQUIRY_CHECK_ELIGIBILITY: 'eligibility',\n LOAN_ENQUIRY_OTP_REQUEST: 'otp-request',\n LOAN_ENQUIRY_OTP_VALIDATE: 'otp-validate',\n LOAN_ENQUIRY_CREATE: 'create',\n LOAN_ENQUIRY_GENERATE_SIGNATURE: 'hash',\n \n LOAN_ENQUIRY_REQUEST_OPEN: 'request-open',\n LOAN_ENQUIRY_OPEN_ENQUIRY: 'open-enquiry',\n LOAN_ENQUIRY_ENQUIRY_DOCUMENT: 'enquiry-document',\n LOAN_ENQUIRY_ENQUIRY_ID_VERIFICATION: 'enquiry-id-verification',\n};\n","import api from '@/shared/services/api';\nimport types from './types.js';\nimport router from '../router/index.js';\nimport routerNames from '../router/router-names.js';\n\n/// Reads LoanEnquiryConfig from remote API \n/// Returns: False or Configuration Data\n/// ********************************************\nconst getLoanEnquiryConfig = async function () {\n try {\n return parseResponse(await api.get(types.apiRoot + types.LOAN_ENQUIRY_CONFIGURATION_READ));\n }\n catch (error) {\n console.error(error);\n router.push({ name: routerNames.Timeout });\n return false;\n }\n};\n\n/// POST remote API\n/// ***********************************************\nconst saveLoanEnquiry = async function (payload) {return postRequest(types.LOAN_ENQUIRY_CREATE, payload)};\nconst checkEligibility = async function (payload) { return postRequest(types.LOAN_ENQUIRY_CHECK_ELIGIBILITY, payload); };\nconst otpRequest = async function (payload) { return postRequest(types.LOAN_ENQUIRY_OTP_REQUEST, payload); };\nconst otpValidate = async function (payload) { return postRequest(types.LOAN_ENQUIRY_OTP_VALIDATE, payload); };\nconst requestOpen = async function (payload) { return postRequest(types.LOAN_ENQUIRY_REQUEST_OPEN, payload); };\nconst openEnquiry = async function (payload) { return postRequest(types.LOAN_ENQUIRY_OPEN_ENQUIRY, payload); };\nconst enquiryDoc = async function (payload) { return postRequest(types.LOAN_ENQUIRY_ENQUIRY_DOCUMENT, payload); };\nconst enquiryIdVerification = async function (payload) { return postRequest(types.LOAN_ENQUIRY_ENQUIRY_ID_VERIFICATION, payload); };\nconst generateSignature = async function (payload) { return postRequest(types.LOAN_ENQUIRY_GENERATE_SIGNATURE, payload); };\n\n/// Generic Post Request\n/// **************************************************\nconst postRequest = async function (action, payload) {\n try {\n return parseResponse(await api.post(types.apiRoot + action, payload));\n }\n catch (error) {\n console.error(error);\n router.push({ name: routerNames.Error });\n return false;\n }\n};\n\n/// Parse JSON response\n/// ***************************\nconst parseResponse = response => {\n if (response.status !== 200) throw Error(response.message);\n return !response.data || typeof response.data != 'object' ? [] : response.data;\n};\n\nexport const service = {\n getLoanEnquiryConfig,\n saveLoanEnquiry, \n checkEligibility, \n otpRequest, \n otpValidate, \n requestOpen, \n openEnquiry, \n enquiryDoc,\n enquiryIdVerification,\n generateSignature\n};","import generic from '@/shared/utils/generic.js';\n\n/// Sets component.elements configuration properties\n/// that : VueComponent\n/// elsCnfg : Elements configurations\n/// ************************************************\nconst setElementsConfig = function (that, elsCnfg) {\n that.elsLabel = elsCnfg.lstLabel;\n that.elsInUse = elsCnfg.lstInUse;\n that.elsRequired = elsCnfg.lstRequired;\n that.elsHelperText = elsCnfg.lstHelperText;\n};\n\n/// Returns true if language is English/ Primary \n/// Reads info from external input\n/// *******************************\nconst isPrimaryLang = function () {\n if (window._inputs === undefined || window._inputs === null) console.log(\"window._inputs missing in isPrimaryLang\");\n else return window._inputs.inputGlobal.locale.startsWith(\"en\");\n};\n\n/// Returns local name from external input\n/// Reads info from external input\n/// ***************************\nconst getLocale = function () {\n if (window._inputs === undefined || window._inputs === null) console.log(\"window._inputs missing in getLocale\");\n else return window._inputs.inputGlobal.locale;\n};\n\n/// Returns current currency symbol\n/// Reads info from external input\n/// *********************************\nconst currentCurrency = function () {\n if (window._inputs === undefined || window._inputs === null) console.log(\"window._inputs missing in currentCurrency\");\n else return window._inputs.inputGlobal.currency;\n};\n\n/// Build URi for static asset\n/// Reads info from external input\n/// *******************************\nconst assetUri = function (asset) {\n if (window._inputs === undefined || window._inputs === null) console.log(\"window._inputs missing in assetUri\");\n else return window._inputs.inputGlobal.assetsUri + asset;\n};\n\n/// Reads a text from configuration\n/// *******************************************\nconst textValue = function (texts, cuInfo, params, refData, key, args) {\n if (!texts) return '';\n const text = texts.filter(el => { return el.Key === key; });\n let finalText = text.length > 0 ? (isPrimaryLang() ? text[0].Html : text[0].HtmlLang2) : '';\n\n try {\n if (window?._inputs?.inputModule) {\n const { inputModule } = window._inputs;\n const loanAmount = inputModule.loanAmount;\n const loanRepayment = inputModule.loanRepayment;\n const loanTerm = inputModule.loanTerm;\n\n finalText = finalText.replaceAll(\"{LoanAmount}\", generic.formatCurrencyToUi(loanAmount, currencyConfig()))\n .replaceAll(\"{RepaymentAmount}\", generic.formatCurrencyToUi(loanRepayment, currencyConfig({ precision: 2 })))\n .replaceAll(\"{LoanTerm}\", loanTerm);\n\n if (refData && (finalText.includes(\"{LoanFrequency}\") || finalText.includes(\"{FrequencyText}\"))) {\n const item = refData.Frequencies.find(el => el.ID == inputModule.loanFrequency);\n if (item) {\n finalText = finalText.replaceAll(\"{LoanFrequency}\", item.Plural);\n finalText = finalText.replaceAll(\"{FrequencyText}\", item.Value);\n }\n }\n }\n } catch (error) {\n alert(error);\n console.error(\"An error occurred while processing inputModule:\", error);\n // Handle or log the error as needed\n }\n\n // Support for \"CUInfo.*\" and \"Param.\" usage in texts\n if (cuInfo && finalText.indexOf(\"{CUInfo.\") !== -1) Object.entries(cuInfo).forEach(p => finalText = finalText.replaceAll(\"{CUInfo.\" + p[0] + \"}\", p[1]));\n if (params && finalText.indexOf(\"{Param.\") !== -1) params.forEach(p => finalText = finalText.replaceAll(\"{Param.\" + p.Name + \"}\", p.Value));\n if (refData && finalText.indexOf(\"{Setting.\") !== -1) refData.SystemSettings.forEach(p => finalText = finalText.replaceAll(\"{Setting.\" + p.Name + \"}\", p.Value));\n\n return args && Array.isArray(args) && args.length > 0 ? finalText.format(args) : finalText;\n};\n\nconst clone = function (obj, bare) {\n if (bare) {\n let ret = {};\n Object.entries(obj).forEach(p => {\n ret[p[0]] = p[1] !== null && typeof p[1] === 'object' ? p[1].ID : p[1];\n });\n return ret;\n }\n else return JSON.parse(JSON.stringify(obj));\n};\n\nconst currencyConfig = function (defaultOptions) {\n return {\n length: defaultOptions && defaultOptions.length ? defaultOptions.length : 7,\n precision: defaultOptions && defaultOptions.precision ? defaultOptions.precision : 0, \n locale: getLocale(),\n prefix: currentCurrency()\n };\n};\n\nexport default {\n setElementsConfig, \n isPrimaryLang, \n textValue,\n currentCurrency, \n getLocale, \n assetUri,\n currencyConfig, \n clone\n};\n","export default {\n TimeoutPageTitle: 'Page timeout',\n TimeoutMessageMetaDescription: \"The page timed out while loading.\",\n TimeoutMessage: \"This page timed out and could not be loaded. Please try again later.\",\n NotFoundMessage: \"Page not Found !!!\"\n};","// Global Constants for ALL Open Modules \nexport default {\n inputDateFormat: 'YYYY-MM-DD',\n displayDateFormat: 'MMM DD, YYYY',\n displayTimeFormat: 'HH:mm:ss.SSS', \n\n PopUpMaxWidth: 400,\n IE: \"IE\",\n IECountryCode: 353,\n UK: \"UK\",\n UKCountryCode: 44,\n IECountryName: \"Ireland\",\n UKCountryName: \"United Kingdom\"\n};","\nimport constants from '../constants/generic'\nimport moment from 'moment';\nimport paramKeys from '@/open-modules/loan-enquiry/constants/param-keys.js';\n\n// Lazy-loads view components, but with better UX. A loading view\n// will be used if the component takes a while to load, falling\n// back to a timeout view in case the page fails to load. You can\n// use this component to lazy-load a route with:\n//\n// component: () => lazyLoadView(import('@views/my-view'))\n//\n// NOTE: Components loaded with this strategy DO NOT have access\n// to in-component guards, such as beforeRouteEnter,\n// beforeRouteUpdate, and beforeRouteLeave. You must either use\n// route-level guards instead or lazy-load the component directly:\n//\n// component: () => import('@views/my-view')\n//\n// otherwise\n//\n// component: () => generic.lazyLoadView(import('@views/my-view')),\n\nimport { defineAsyncComponent, createVNode } from \"vue\";\n\nconst lazyLoadView = function (asyncView) {\n\n const asynchandler = defineAsyncComponent({\n loader: () => asyncView, \n loadingComponent: require('@/shared/views/loading.vue').default,\n errorComponent: require('@/shared/views/timeout.vue').default,\n delay: 1,\n timeout: 10000,\n });\n \n return Promise.resolve({\n functional: true,\n render(_, { data, children }) {\n // Transparently pass any props or children to the view component\n return createVNode(asynchandler, data, children);\n },\n });\n};\n\n/// Returns today date \n/// *****************************\nconst todayString = function () {\n return (new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substring(0, 10);\n};\n\n/// Formats currency value to display in UI\n/// options: { local: \"en-ie\", precision: 2, prefix: \"€\" }\n/// **************************************************\nconst formatCurrencyToUi = function (value, options) {\n const ret = !value || (typeof value !== 'number' && !value.isNumeric()) ? \"\" : Number(value).toLocaleString(options.locale, { maximumFractionDigits: options.precision, minimumFractionDigits: options.precision});\n return ret === \"\" ? ret : (options.prefix ? options.prefix : \"\") + \" \" + ret;\n};\n\n/// Reads a param from configuration\n/// ****************************************\nconst paramValue = function (loanEnquiryConfig, name) {\n return filterValue(loanEnquiryConfig.Params, name);\n};\n\n/// Filters array of type [{Name: '', Value: ''}, ...]\n/// Can be used with loanEnquiryConfig.Params and referenceData.SystemSettings\n/// ****************************************\nconst filterValue = function(arr, name) {\n if (!arr) return '';\n const param = arr.filter(el => { return el.Name === name; });\n return param.length > 0 ? param[0].Value : '';\n};\n\n/// Opens a new window \n/// ****************************************\nconst openWindow = function(url, target, options) {\n window.open(url, target ?? \"_self\", options);\n};\n\n/// Returns a string from a potencial null value\n/// ****************************************\nconst getString = function (value) {\n return value === null || value === undefined ? \"\" : value;\n};\n\nconst isEmptyString = function (value) {\n return value == null || value == undefined || value == \"\";\n};\n\n/// Converts object to array droping empty columns\n/// ****************************************\nconst toArray = function (obj) {\n return Object.entries(obj).reduce((a, [k, v]) => (v ? (a[k] = v, a) : a), {});\n};\n\n/// Formats Date to UI Format - Uses node module \"moment()\"\n/// ****************************************\nconst formatDateToUI = function (val) {\n if (!val) return \"\";\n return moment(val).format(constants.displayDateFormat);\n};\n\nconst formatDateToString = function (val) {\n if (!val) return \"\";\n return moment(val).format(constants.inputDateFormat);\n};\n\n/// ParseBoolValue - Parses boolean value received as string\n/// ****************************************\nconst parseBoolValue = function (val) {\n try {\n return val === null || val == undefined ? false : (typeof (val) == 'string' ? eval(val.toLowerCase()) : val);\n }\n catch (e) { return false; }\n};\n\n/// Checks is the \"required\" validator function is present in the rules collection\n/// ****************************************\nconst isRequired = function (rules) {\n if (rules !== undefined) {\n const req = rules.find(el => typeof (el) === 'function' && el.name == 'required');\n return req && req.length > 0;\n }\n return false;\n};\n\n/// Clean number function\n/// ****************************************\nconst cleanNumber = function (value) {\n let result = \"\";\n if (value) {\n let flag = false;\n const arrayValue = value.toString().split(\"\");\n for (var i = 0; i < arrayValue.length; i++) {\n if (Number.isInteger(parseInt(arrayValue[i])) || arrayValue[i] == \"-\") { // minus sign\n if (!flag) {\n // Remove leading zeros\n if (arrayValue[i] !== \"0\") {\n result = result + arrayValue[i];\n flag = true;\n }\n }\n else result = result + arrayValue[i];\n }\n }\n }\n return result;\n};\n\n\nconst redirectToStart = function () {\n window.location.href =\n window._inputs.inputGlobal.startUrl ?\n window._inputs.inputGlobal.startUrl :\n paramValue(this.loanEnquiryConfig, paramKeys.ExpiredTokenRedirectUrl);\n}\n\nconst getQueryParam = function (param) {\n // Determine the query string from either the hash or search part of the URL\n let queryString = '';\n\n if (window.location.hash.includes('?')) {\n // Extract the hash part of the URL\n const hash = window.location.hash;\n // Split the hash to separate the path and the query string\n queryString = hash.split('?')[1];\n } else if (window.location.search) {\n // Use the search part of the URL if available\n queryString = window.location.search.substring(1);\n }\n\n // Parse the query string\n const params = new URLSearchParams(queryString);\n\n // Get the value of the specified parameter\n return params.get(param);\n}\n\nexport default {\n lazyLoadView,\n todayString, \n paramValue, \n filterValue,\n formatCurrencyToUi,\n openWindow, \n getString,\n isEmptyString,\n toArray,\n parseBoolValue,\n isRequired,\n cleanNumber,\n formatDateToUI,\n formatDateToString,\n redirectToStart,\n getQueryParam\n};\n","\n\n\n \n \n \n \n\n
{{ omt('GenericErrorText') }}
\n \n \n \n \n\n\n\n\n\n\n","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"error_title_u5RIn\"};","import { render } from \"./error.vue?vue&type=template&id=66214c7b\"\nimport script from \"./error.vue?vue&type=script&lang=js\"\nexport * from \"./error.vue?vue&type=script&lang=js\"\n\nconst cssModules = {}\nimport style0 from \"./error.vue?vue&type=style&index=0&id=66214c7b&lang=scss&module=true\"\ncssModules[\"$style\"] = style0\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__cssModules',cssModules]])\n\nexport default __exports__","\n \n \n {{ label }}\n \n \n
\n\n\n\n\n","import { render } from \"./base-button.vue?vue&type=template&id=2a15c6d4\"\nimport script from \"./base-button.vue?vue&type=script&lang=js\"\nexport * from \"./base-button.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n
\n {{notFoundMessage}}\n \n {{ resource }}\n \n
\n \n\n\n\n\n\n","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"_404_title_QabgL\"};","import { render } from \"./404.vue?vue&type=template&id=7df1ba80\"\nimport script from \"./404.vue?vue&type=script&lang=js\"\nexport * from \"./404.vue?vue&type=script&lang=js\"\n\nconst cssModules = {}\nimport style0 from \"./404.vue?vue&type=style&index=0&id=7df1ba80&lang=scss&module=true\"\ncssModules[\"$style\"] = style0\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__cssModules',cssModules]])\n\nexport default __exports__","\n \n \n \n \n \n
\n\n\n\n\n","import { render } from \"./loading.vue?vue&type=template&id=7d2defb9\"\nimport script from \"./loading.vue?vue&type=script&lang=js\"\nexport * from \"./loading.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n\n \n
\n {{ timeoutMessage }}\n \n {{ resource }}\n \n
\n \n \n\n\n\n\n\n","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"timeout_title_XX2Ed\"};","import { render } from \"./timeout.vue?vue&type=template&id=2c7ec02f\"\nimport script from \"./timeout.vue?vue&type=script&lang=js\"\nexport * from \"./timeout.vue?vue&type=script&lang=js\"\n\nconst cssModules = {}\nimport style0 from \"./timeout.vue?vue&type=style&index=0&id=2c7ec02f&lang=scss&module=true\"\ncssModules[\"$style\"] = style0\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__cssModules',cssModules]])\n\nexport default __exports__","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"51\":\"6214103c\",\"162\":\"d5c39cb9\",\"195\":\"cfae346c\",\"318\":\"596f62d6\",\"341\":\"904a52bb\",\"439\":\"ace60e89\",\"464\":\"abbe8ad2\",\"576\":\"90264f1d\",\"667\":\"b68c2328\",\"686\":\"3b4e456f\",\"767\":\"aa8ab350\",\"886\":\"6bb6e0c5\",\"939\":\"3b9749f4\",\"949\":\"0bfbdcd8\",\"971\":\"e19ae53e\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"51\":\"b32bb24a\",\"195\":\"f02db021\",\"318\":\"855a4d31\",\"439\":\"50e602b9\",\"464\":\"92be5091\",\"576\":\"6da34025\",\"686\":\"c201fc22\",\"767\":\"758a42f2\",\"886\":\"f4009806\",\"971\":\"fb43b4fe\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"open-modules-app:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tif (__webpack_require__.nc) {\n\t\tlinkTag.nonce = __webpack_require__.nc;\n\t}\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && event.type;\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + errorType + \": \" + realHref + \")\");\n\t\t\terr.name = \"ChunkLoadError\";\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t57: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"51\":1,\"195\":1,\"318\":1,\"439\":1,\"464\":1,\"576\":1,\"686\":1,\"767\":1,\"886\":1,\"971\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t57: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\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\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkopen_modules_app\"] = self[\"webpackChunkopen_modules_app\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(771); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","LOAN_ENQUIRY_TOP_BAR_HEIGHT","OpenModuleTitle","LOAN_ENQUIRY_SUCCESS","LOAN_ENQUIRY_NOT_ELIGIBLE_RESPONSE","LOAN_ENQUIRY_NO_CONTENT","LOAN_ENQUIRY_NOT_FOUND","LOAN_ENQUIRY_UNAUTHORIZED","inOutType_Income","inOutType_Outgoing","EFT","BenefitsToPayment","StandingOrder","PayrollMandate","PBCodes","DocumentStatus","AwaitingUpload","Uploaded","OpenBankingConsentGiven","OTP","Expired","Invalid","TooManyFailedAttempts","JumioAcquisitionStatus","Success","IdVerificationStatus","VerificationNotRequired","AwaitingVerification","VerificationPending","VerificationSucceeded","VerificationFailed","VerificationExpired","IdentityBlacklisted","MembershipApplicationStatus","Withdrawn","Rejected","CSSBannerClass","Warning","Info","GreenSuccess","EligibilityCheckEnabled","RedirectToLoginPage","AllowFromOutsideCommonBond","AllowedFileExtensions","PreviousAddressRequiredInYears","LoanAppExpenditureMinItemsConfirmation","HidePostcodeCheck","RedirectUnregisteredUserUrl","PaymentStepValue","PaymentStepEnabled","PaymentStepTestMode","PaymentStepServiceUrl","PaymentStepInstallationId","PaymentStepCardsUrl","PaymentStepItemDescription","ExpiredTokenRedirectUrl","MinimumAge","UseLoanDetailDescription","PreparingOpenBankingDocPackRetryIntervalSeconds","OpenBankingAllowManualUploadOnDocuments","DisplayConsentToStorePhoto","_createBlock","_component_v_app","default","_withCtx","_createVNode","_component_v_main","_component_router_view","dataLoaded","_ctx","_","name","data","setup","loadLoanEnquiryConfig","resetState","useLoanEnquiryStore","created","rName","this","$router","currentRoute","value","routerNames","Home","DocPackUpload","resp","console","log","LoanEnquiryConfig","Theme","forEach","i","$vuetify","theme","themes","light","colors","__exports__","render","createVuetify","defaultTheme","String","prototype","format","args","arguments","replace","match","index","startsWith","searchString","position","toLowerCase","substr","length","toBool","trim","Boolean","isNumeric","v","Number","isNaN","Date","dateAdd","offset","setFullYear","getFullYear","toISOString","mixin","methods","omt","key","loanEnquiryConfig","opmGeneric","textValue","DisplayTexts","CreditUnionInfo","Params","ReferenceData","formatCurrencyToUi","options","generic","currencyConfig","pinia","createPinia","use","piniaPluginPersistedState","_app","createApp","app","router","vuetify","isReady","then","mount","path","component","lazyLoadView","MemberNonMember","Payment","ConfirmMembership","ValidateMobile","EnquiryForm","OpenEnquiry","require","Timeout","props","redirect","location","pathname","indexOf","__webpack_public_path__","locale","substring","routerBasePath","createRouter","history","createWebHistory","routes","scrollBehavior","to","from","savedPosition","matched","every","record","x","y","isInitialNavigation","beforeEach","next","whitelist","requestedPath","includes","undefined","window","_inputs","inputModule","query","s","genericUtils","redirectToStart","afterEach","document","title","inputGlobal","cuName","split","getDefaultState","loanEnquiryData","elsConfig","lstLabel","lstInUse","lstRequired","lstHelperText","paymentConfirmed","defineStore","state","persist","getters","referenceData","elementsConfig","actions","config","service","getLoanEnquiryConfig","Response","StatusCode","FieldsConfiguration","isPrimaryLang","el","Name","Required","Label","LabelLang2","text","HelperText","HelperTextLang2","entries","p","replaceAll","concat","Value","SystemSettings","updateLocalLoanEnquiryData","payload","assign","updateLoanEnquiryConfig","saveLoanEnquiry","ReturnedErrorCode","constants","AccessToken","DocPack","MemAppDocumentPackDetailList","DocumentPackComplete","EncodedQueryString","IdentityVerificationStatus","MembershipApplicationStatus_Status","Consent","ConsentText","ConsentTextID","checkEligibility","otpValidate","Token","TokenId","LoanEnquiry","requestOpen","openEnquiry","enquiryDoc","body","DocumentTypeID","docPackInfo","DocumentType_ID","DocumentPackDetailID","MemberDocumentPackDetailID","Documents","docPackFiles","enquiryIdVerification","ConsentBiometric","ConsentPhoto","RequestBody","confirmPayment","axios","create","baseURL","process","timeout","maxContentLength","headers","apiRoot","LOAN_ENQUIRY_CONFIGURATION_READ","LOAN_ENQUIRY_CHECK_ELIGIBILITY","LOAN_ENQUIRY_OTP_REQUEST","LOAN_ENQUIRY_OTP_VALIDATE","LOAN_ENQUIRY_CREATE","LOAN_ENQUIRY_GENERATE_SIGNATURE","LOAN_ENQUIRY_REQUEST_OPEN","LOAN_ENQUIRY_OPEN_ENQUIRY","LOAN_ENQUIRY_ENQUIRY_DOCUMENT","LOAN_ENQUIRY_ENQUIRY_ID_VERIFICATION","async","parseResponse","api","get","types","error","push","postRequest","otpRequest","generateSignature","action","post","response","status","message","setElementsConfig","that","elsCnfg","elsLabel","elsInUse","elsRequired","elsHelperText","getLocale","currentCurrency","currency","assetUri","asset","assetsUri","texts","cuInfo","params","refData","filter","Key","finalText","Html","HtmlLang2","loanAmount","loanRepayment","loanTerm","precision","item","Frequencies","find","ID","loanFrequency","Plural","alert","Array","isArray","clone","obj","bare","ret","JSON","parse","stringify","defaultOptions","prefix","TimeoutPageTitle","TimeoutMessageMetaDescription","TimeoutMessage","NotFoundMessage","inputDateFormat","displayDateFormat","displayTimeFormat","PopUpMaxWidth","IE","IECountryCode","UK","UKCountryCode","IECountryName","UKCountryName","asyncView","asynchandler","defineAsyncComponent","loader","loadingComponent","errorComponent","delay","Promise","functional","children","createVNode","todayString","now","getTimezoneOffset","toLocaleString","maximumFractionDigits","minimumFractionDigits","paramValue","filterValue","arr","param","openWindow","url","target","open","getString","isEmptyString","toArray","reduce","a","k","formatDateToUI","val","moment","formatDateToString","parseBoolValue","eval","isRequired","rules","cleanNumber","result","flag","arrayValue","toString","isInteger","parseInt","href","startUrl","paramKeys","getQueryParam","queryString","hash","search","URLSearchParams","class","_component_v_container","_component_v_sheet","color","_createElementVNode","_normalizeClass","$style","_component_v_img","src","_imports_0","_hoisted_1","_toDisplayString","_component_BaseButton","onClick","$options","_retryClick","label","page","meta","content","components","BaseButton","cssModules","_createElementBlock","_component_v_btn","_mergeProps","size","$props","buttonSize","elevation","$attrs","_click","disabled","loading","inAction","_createTextVNode","_renderSlot","$slots","inheritAttrs","type","emits","$emit","$data","notFoundMessage","resource","_Fragment","_createCommentVNode","_component_v_layout","style","_component_v_progress_circular","indeterminate","timeoutMessage","offlineConfirmed","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","splice","r","n","getter","__esModule","d","definition","defineProperty","enumerable","f","chunkId","all","promises","u","miniCssF","g","globalThis","Function","prop","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","setTimeout","bind","head","appendChild","Symbol","toStringTag","nmd","paths","createStylesheet","fullhref","oldTag","reject","linkTag","rel","nonce","onLinkComplete","errorType","realHref","err","request","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}