{"version":3,"sources":["webpack:///./src/enums/market.js","webpack:///./src/router.js","webpack:///./src/store/authentication.module.js","webpack:///./src/store/app.module.js","webpack:///./src/store/index.js","webpack:///./src/services/token-verification.js","webpack:///./src/views/Home.vue?f6ea","webpack:///./src/components/HomeDashboard.vue?699b","webpack:///./src/helpers/cookie.js","webpack:///src/components/HomeDashboard.vue","webpack:///./src/components/HomeDashboard.vue?68ab","webpack:///./src/components/HomeDashboard.vue","webpack:///src/views/Home.vue","webpack:///./src/views/Home.vue?653d","webpack:///./src/views/Home.vue","webpack:///./src/views/Login.vue?1859","webpack:///src/views/Login.vue","webpack:///./src/views/Login.vue?62fe","webpack:///./src/views/Login.vue","webpack:///./src/sitemap.js","webpack:///./src/helpers/notification.js","webpack:///./src/helpers/menu-helpers.js"],"names":["Object","freeze","Base","FX","IR","AG","Metal","Energy","Other","Vue","use","Router","router","mode","base","process","routes","sitemap","beforeEach","to","from","next","matched","isLoggedIn","store","getters","meta","requiresAuth","has","path","returnUrl","location","pathname","query","afterEach","dispatch","currentMarketId","marketId","module","markets","values","includes","metaMarkets","namespaced","state","status","token","localStorage","getItem","refreshToken","refreshTokenInterval","clients","JSON","parse","userClientMarkets","defaultClientId","selectedClientId","mutations","auth_request","auth_success","setItem","stringify","auth_error","logout","clearInterval","removeItem","setSelectedClientId","setUserClientMarkets","data","start_refresh_token_interval","immediate","this","setInterval","actions","login","user","commit","Promise","resolve","reject","axios","url","method","then","resp","applicationName","applicationOrigin","applicationRevision","applicationVersion","applicationConfiguration","applicationPaths","defaults","headers","common","Date","now","catch","err","root","get","params","clientId","startRefreshTokenInterval","getNewAccessToken","username","currentUsername","parseInt","response","default","push","changePassword","_store","currentPassword","newPassword","put","error","errorMessage","Error","success","message","currentRole","authStatus","jwt_decode","tokenString","selectedClient","find","c","getMergedPaths","sitemapMeta","map","item","applicationPath","el","selectedPeriodId","reportDate","kendo","toString","history","setConfiguration","mergedPaths","setClientConfiguration","currentRoute","routePermission","enable","newContent","toasted","show","position","duration","className","action","icon","onClick","selectPeriod","periodId","setMenuMarket","changeReportDate","selectedDate","cleanApplicationConfiguration","addHistory","setSelectedPeriod","setReportDate","convertedDate","refresh","reload","SET_APPLICATION_CONFIGURATION","CLEAN_APPLICATION_CONFIGURATION","SET_CLIENT_PATHS","storeHistory","Set","slice","enabledPaths","_getters","_rootState","rootGetters","filter","name","pathsForCurrentRole","_state","role","paths","requiresRole","x","text","readOnlyRoles","pathNamesForCurrentRole","folders","firstPathForFolder","reduce","acc","folder","match","toUpperCase","keys","folderIcons","firstPath","filteredItems","isMaster","items","folderIcon","expanded","children","getItemsFromFolder","toLowerCase","visibleModules","Boolean","hasProcessManager","some","hasOrders","endsWith","hasInstruction","Vuex","Store","modules","authentication","app","fullPath","loginRoute","notification","requestToken","console","log","expiration","exp","getTime","createAuthRefreshInterceptor","jQuery","ajaxSetup","beforeSend","xhr","setRequestHeader","statusCode","401","ajax","interceptors","undefined","config","__isRetryRequest","render","_vm","_h","$createElement","_c","_self","attrs","welcomeVisible","_e","staticClass","key","staticRenderFns","_l","index","length","slot","_v","_s","ref","marketName","on","$event","goToMarketNode","subItem","click","setCookie","value","minutes","expires","date","setTime","toUTCString","document","cookie","getCookie","nameEQ","ca","split","i","charAt","substring","indexOf","eraseCookie","methods","getFolderItem","nodes","computed","clientMarkets","market","clientMarketsSorted","baseIndex","entries","splice","dashboardItems","subItems","component","VBtn","VCard","VContainer","VFlex","VIcon","VLayout","VList","VListTile","VListTileTitle","VMenu","mounted","setTimeout","components","HomeDashboard","VImg","preventDefault","model","callback","$$v","valid","expression","emailRules","email","v","password","class","blue","$router","keepLogged","$refs","form","validate","$store","VAlert","VCardActions","VCardText","VCardTitle","VDivider","VForm","VTextField","Home","Login","props","rateType","Toasted","e","toastObject","goAway","register","type","global","startsWith","getItemsFromFolderAndMarket","LIST","REPORT","CONFIG","CLIENT","SECURITY","MARKETDATA","PROCESS"],"mappings":"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","file":"js/chunk-common.4b38e2aa.js","sourcesContent":["export default Object.freeze({\n Base: -1,\n FX: 1,\n IR: 2,\n AG: 3,\n Metal: 4,\n Energy: 5,\n Other: 6,\n})\n","import Vue from 'vue'\nimport store from './store'\nimport sitemap from './sitemap'\nimport Router from 'vue-router'\nimport markets from './enums/market'\n\nVue.use(Router)\n\nconst router = new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: sitemap,\n})\n\nrouter.beforeEach((to, from, next) => {\n const [matched] = to.matched\n const isLoggedIn = store.getters['authentication/isLoggedIn']\n if (matched.meta.requiresAuth && !isLoggedIn) {\n const returnUrl = location.pathname\n next({path: '/login', query: returnUrl != '/' ? {returnUrl} : null})\n return\n }\n\n if (store.getters['app/pathNamesForCurrentRole'].has(matched.path)) {\n next()\n } else {\n next({path: '/'})\n }\n})\n\nrouter.afterEach(({path, meta}) => {\n store.dispatch('app/addHistory', {path})\n const currentMarketId = store.getters['app/marketId']\n let marketId = -1\n\n if (meta.module && meta.markets == null) {\n marketId = markets[meta.module]\n store.dispatch('app/setMenuMarket', {marketId})\n } else if (meta.markets && !Object.values(meta.markets).includes(currentMarketId)) {\n //const marketId = Object.values(meta.markets)[0]\n const metaMarkets = Object.values(meta.markets)\n marketId = metaMarkets[0]\n store.dispatch('app/setMenuMarket', {marketId})\n }\n})\n\nexport default router\n","import axios from 'axios'\nimport jwt_decode from 'jwt-decode'\n\nexport default {\n namespaced: true,\n state: {\n status: '',\n token: localStorage.getItem('token') || '',\n refreshToken: localStorage.getItem('refreshToken') || '',\n refreshTokenInterval: null,\n\n clients: JSON.parse(localStorage.getItem('clients')) || [],\n\n userClientMarkets:\n (localStorage.getItem('userClientMarkets') !== 'undefined' &&\n JSON.parse(localStorage.getItem('userClientMarkets'))) ||\n [],\n defaultClientId: localStorage.getItem('defaultClientId') || null,\n selectedClientId: localStorage.getItem('selectedClientId') || null,\n },\n mutations: {\n auth_request(state) {\n state.status = 'loading'\n },\n auth_success(\n state,\n {token, refreshToken, clients, userClientMarkets, defaultClientId, selectedClientId},\n ) {\n state.status = 'success'\n state.token = token\n state.refreshToken = refreshToken\n\n state.clients = clients\n state.userClientMarkets = userClientMarkets\n state.defaultClientId = defaultClientId\n state.selectedClientId = selectedClientId\n\n localStorage.setItem('token', token)\n localStorage.setItem('refreshToken', refreshToken)\n localStorage.setItem('clients', JSON.stringify(clients))\n localStorage.setItem('userClientMarkets', JSON.stringify(userClientMarkets))\n localStorage.setItem('defaultClientId', defaultClientId)\n localStorage.setItem('selectedClientId', selectedClientId)\n },\n auth_error(state) {\n state.status = 'error'\n },\n logout(state) {\n clearInterval(state.refreshTokenInterval)\n state.status = ''\n state.token = ''\n state.refreshToken = ''\n state.refreshTokenInterval = null\n state.clients = []\n state.userClientMarkets = []\n state.defaultClientId = null\n state.selectedClientId = null\n\n localStorage.removeItem('lastActivity')\n localStorage.removeItem('token')\n localStorage.removeItem('refreshToken')\n localStorage.removeItem('clients')\n localStorage.removeItem('userClientMarkets')\n localStorage.removeItem('defaultClientId')\n localStorage.removeItem('selectedClientId')\n },\n setSelectedClientId(state, {selectedClientId}) {\n state.selectedClientId = selectedClientId\n },\n setUserClientMarkets(state, {data}) {\n state.userClientMarkets = data\n },\n start_refresh_token_interval(state, {immediate}) {\n if (immediate) {\n this.dispatch('authentication/getNewAccessToken')\n }\n\n state.refreshTokenInterval = setInterval(() => {\n this.dispatch('authentication/getNewAccessToken')\n }, 15 * 1000 * 60) // 15 minutes\n },\n },\n actions: {\n login({commit}, user) {\n return new Promise((resolve, reject) => {\n commit('auth_request')\n axios({\n url: '/api/Token',\n data: user,\n method: 'POST',\n })\n .then(resp => {\n const {\n token,\n refreshToken,\n clients,\n userClientMarkets,\n defaultClientId,\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n applicationPaths,\n markets,\n } = resp.data\n\n this.dispatch('app/setConfiguration', {\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n applicationPaths,\n markets,\n })\n\n axios.defaults.headers.common['Authorization'] = `Bearer ${token}`\n\n this.dispatch('authentication/startRefreshTokenInterval')\n\n const selectedClientId = defaultClientId\n commit('auth_success', {\n token,\n refreshToken,\n clients,\n userClientMarkets,\n defaultClientId,\n selectedClientId,\n })\n\n localStorage.setItem('lastActivity', Date.now())\n resolve(resp)\n })\n .catch(err => {\n commit('auth_error')\n localStorage.removeItem('token')\n localStorage.removeItem('refreshToken')\n reject(err)\n })\n })\n },\n logout({commit, dispatch}) {\n return new Promise(resolve => {\n dispatch(\n 'app/cleanApplicationConfiguration',\n {},\n {\n root: true,\n },\n )\n commit('logout')\n localStorage.removeItem('lastActivity')\n localStorage.removeItem('token')\n localStorage.removeItem('refreshToken')\n localStorage.removeItem('clients')\n localStorage.removeItem('userClientMarkets')\n localStorage.removeItem('defaultClientId')\n localStorage.removeItem('selectedClientId')\n localStorage.removeItem('applicationPaths')\n\n delete axios.defaults.headers.common['Authorization']\n resolve()\n })\n },\n async setSelectedClientId({commit}, {selectedClientId}) {\n const {data} = await axios.get('/api/Token/getUserClientMarkets', {\n params: {\n clientId: selectedClientId,\n },\n })\n\n commit('setSelectedClientId', {\n selectedClientId,\n })\n commit('setUserClientMarkets', {\n data,\n })\n localStorage.setItem('userClientMarkets', JSON.stringify(data))\n localStorage.setItem('selectedClientId', selectedClientId)\n },\n startRefreshTokenInterval({commit}, {immediate} = {}) {\n commit('start_refresh_token_interval', {\n immediate,\n })\n },\n async getNewAccessToken({commit, state, getters}) {\n const {refreshToken} = state\n if (!refreshToken) {\n return\n }\n\n const username = getters.currentUsername\n let selectedClientId = parseInt(getters.selectedClientId)\n commit('auth_request')\n const resp = await axios({\n url: '/api/Token/refreshToken',\n data: {\n username,\n refreshToken,\n selectedClientId,\n },\n method: 'POST',\n }).catch(async ({response}) => {\n if (response.data == 'Could not create token') {\n this.dispatch('authentication/logout')\n const router = await import('../router')\n router.default.push('/login')\n return\n }\n })\n\n if (resp == null) {\n return\n }\n\n if (resp.data == null) {\n this.dispatch('authentication/logout')\n const router = await import('../router')\n router.default.push('/login')\n return\n }\n\n const {\n token,\n clients,\n userClientMarkets,\n defaultClientId,\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n applicationPaths,\n markets,\n } = resp.data\n\n this.dispatch('app/setConfiguration', {\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n applicationPaths,\n markets,\n })\n\n axios.defaults.headers.common['Authorization'] = `Bearer ${token}`\n commit('auth_success', {\n token,\n refreshToken,\n clients,\n userClientMarkets,\n defaultClientId,\n selectedClientId,\n })\n },\n async changePassword(_store, {currentPassword, newPassword}) {\n const response = await axios\n .put('/api/accounts/changeMyPassword', {\n currentPassword,\n newPassword,\n })\n .catch(error => error)\n\n if (response.status === 400) {\n let errorMessage =\n response.data.Error != null ? response.data.Error[0] : 'Error changing password'\n return {success: false, message: errorMessage}\n }\n\n if (response.status === 200) {\n return {success: true, message: 'Password changed successfully'}\n }\n\n return {success: false, message: 'There was a problem'}\n },\n },\n getters: {\n isLoggedIn: state => {\n return !!state.token\n },\n currentUsername: (state, getters) => {\n if (!getters.token) return null\n return (\n getters.token['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier'] ||\n null\n )\n },\n currentRole: (state, getters) => {\n if (!getters.token) return null\n return getters.token['http://schemas.microsoft.com/ws/2008/06/identity/claims/role'] || null\n },\n authStatus: state => state.status,\n token: state => {\n if (!state.token) return null\n\n return jwt_decode(state.token)\n },\n tokenString: state => state.token,\n refreshToken: state => state.refreshToken,\n clients: state => state.clients,\n userClientMarkets: state => state.userClientMarkets,\n defaultClientId: state => state.defaultClientId,\n selectedClientId: state => state.selectedClientId,\n selectedClient: state => state.clients.find(c => c.clientId == state.selectedClientId),\n },\n}\n","import Vue from 'vue'\nimport axios from 'axios'\nimport {getItemsFromFolder, folderIcons} from '../helpers/menu-helpers'\nasync function getMergedPaths(applicationPaths, markets) {\n const {default: sitemapMeta} = await import('../sitemap')\n\n return sitemapMeta.map(item => {\n const applicationPath = applicationPaths.find(\n el =>\n el.path == item.path && item.meta && item.meta.module && markets.includes(item.meta.module),\n )\n if (!applicationPath) {\n return {\n ...item,\n }\n }\n return {\n ...applicationPath,\n meta: item.meta,\n }\n })\n}\n\nexport default {\n namespaced: true,\n state: {\n marketId: localStorage.getItem('marketId') || null,\n selectedPeriodId: localStorage.getItem('selectedPeriodId') || null,\n applicationName: localStorage.getItem('applicationName') || null,\n applicationOrigin: localStorage.getItem('applicationOrigin') || null,\n applicationRevision: localStorage.getItem('applicationRevision') || null,\n applicationVersion: localStorage.getItem('applicationVersion') || null,\n applicationConfiguration: localStorage.getItem('applicationConfiguration') || null,\n applicationPaths: JSON.parse(localStorage.getItem('applicationPaths')) || [],\n markets: JSON.parse(localStorage.getItem('markets')) || [],\n reportDate: kendo.toString(localStorage.getItem('reportDate') || new Date(), 'yyyy-MM-dd'),\n history: JSON.parse(localStorage.getItem('history')) || [],\n },\n actions: {\n async setConfiguration(\n {commit},\n {\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n applicationPaths,\n markets,\n },\n ) {\n commit('SET_APPLICATION_CONFIGURATION', {\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n markets,\n })\n\n const mergedPaths = await getMergedPaths(applicationPaths, markets)\n\n commit('SET_CLIENT_PATHS', {\n applicationPaths: mergedPaths,\n })\n },\n async setClientConfiguration({commit, getters}, {selectedClientId}) {\n const {data} = await axios.get('/api/ApplicationConfiguration/getApplicationPaths', {\n params: {\n clientId: selectedClientId,\n },\n })\n const applicationPaths = data\n\n const markets = getters['markets']\n const mergedPaths = await getMergedPaths(applicationPaths, markets)\n commit('SET_CLIENT_PATHS', {\n applicationPaths: mergedPaths,\n })\n\n const {default: router} = await import('../router.js')\n const {currentRoute} = router\n const routePermission = applicationPaths.find(item => item.path == currentRoute.path)\n\n if (routePermission && !routePermission.enable) {\n router.push('/')\n }\n },\n newContent({commit}, {message}) {\n return new Promise(resolve => {\n Vue.toasted.show(message, {\n position: 'bottom-right',\n duration: 60 * 1000,\n className: ['vue-toast'],\n action: [\n {\n icon: 'refresh',\n onClick: () => {\n resolve(commit('refresh'))\n },\n },\n ],\n })\n })\n },\n selectPeriod({commit}, {periodId}) {\n commit('setSelectedPeriod', {\n periodId,\n })\n },\n setMenuMarket({commit}, {marketId}) {\n commit('setMenuMarket', {\n marketId,\n })\n },\n changeReportDate({commit}, {selectedDate}) {\n commit('setReportDate', {\n selectedDate,\n })\n },\n cleanApplicationConfiguration({commit}) {\n commit('CLEAN_APPLICATION_CONFIGURATION')\n },\n addHistory({commit}, {path}) {\n commit('storeHistory', {path})\n },\n },\n mutations: {\n setSelectedPeriod(state, {periodId}) {\n state.selectedPeriodId = periodId\n localStorage.setItem('selectedPeriodId', periodId)\n },\n setMenuMarket(state, {marketId}) {\n state.marketId = marketId\n localStorage.setItem('marketId', marketId)\n },\n setReportDate(state, {selectedDate}) {\n let convertedDate = kendo.toString(selectedDate, 'yyyy-MM-dd')\n state.reportDate = convertedDate\n localStorage.setItem('reportDate', convertedDate)\n },\n refresh() {\n location.reload(true)\n },\n SET_APPLICATION_CONFIGURATION(\n state,\n {\n applicationName,\n applicationOrigin,\n applicationRevision,\n applicationVersion,\n applicationConfiguration,\n markets,\n },\n ) {\n state.applicationName = applicationName\n state.applicationOrigin = applicationOrigin\n state.applicationRevision = applicationRevision\n state.applicationVersion = applicationVersion\n state.applicationConfiguration = applicationConfiguration\n state.markets = markets\n\n localStorage.setItem('applicationName', applicationName)\n localStorage.setItem('applicationOrigin', applicationOrigin)\n localStorage.setItem('applicationRevision', applicationRevision)\n localStorage.setItem('applicationVersion', applicationVersion)\n localStorage.setItem('applicationConfiguration', applicationConfiguration)\n localStorage.setItem('markets', JSON.stringify(markets))\n },\n CLEAN_APPLICATION_CONFIGURATION(state) {\n state.applicationName = ''\n state.applicationOrigin = ''\n state.applicationRevision = ''\n state.applicationVersion = ''\n state.applicationConfiguration = ''\n state.applicationPaths = []\n state.markets = []\n state.history = []\n\n localStorage.removeItem('lastActivity')\n localStorage.removeItem('applicationName')\n localStorage.removeItem('applicationOrigin')\n localStorage.removeItem('applicationRevision')\n localStorage.removeItem('applicationVersion')\n localStorage.removeItem('applicationConfiguration')\n localStorage.removeItem('applicationPaths')\n localStorage.removeItem('markets')\n localStorage.removeItem('history')\n },\n SET_CLIENT_PATHS(state, {applicationPaths}) {\n state.applicationPaths = applicationPaths\n localStorage.setItem('applicationPaths', JSON.stringify(applicationPaths))\n },\n storeHistory(state, {path}) {\n if (path == '/') return\n state.history = [...new Set([path, ...state.history])].slice(0, 10)\n localStorage.setItem('history', JSON.stringify(state.history))\n },\n },\n getters: {\n selectedPeriodId(state) {\n return state.selectedPeriodId || -1\n },\n marketId(state) {\n return parseInt(state.marketId) || -1\n },\n applicationName: state => {\n if (!state.applicationName) return ''\n return state.applicationName\n },\n applicationOrigin: state => {\n if (!state.applicationOrigin) return ''\n return state.applicationOrigin\n },\n applicationRevision: state => {\n if (!state.applicationRevision) return ''\n return state.applicationRevision\n },\n applicationVersion: state => {\n if (!state.applicationVersion) return ''\n return state.applicationVersion\n },\n applicationConfiguration: state => {\n if (!state.applicationConfiguration) return ''\n return state.applicationConfiguration\n },\n reportDate(state) {\n return kendo.toString(state.reportDate || new Date(), 'yyyy-MM-dd')\n },\n markets: state => state.markets,\n applicationPaths: state => state.applicationPaths,\n enabledPaths: (state, _getters, _rootState, rootGetters) =>\n state.applicationPaths.filter(\n item =>\n item.enable ||\n (item.name == 'application-configuration' &&\n rootGetters['authentication/currentRole'] == 'SuperAdmin'),\n ),\n pathsForCurrentRole: (_state, getters, _rootState, rootGetters) => {\n const role = rootGetters['authentication/currentRole']\n const paths = getters.enabledPaths.filter(item => {\n const {requiresRole} = item.meta || {}\n\n if (requiresRole) {\n return requiresRole.includes(role)\n }\n\n return true\n })\n\n if (role == 'SuperAdmin' && paths.find(x => x.path == '/client/features') == null) {\n paths.push({\n path: '/client/features',\n name: 'client-configuration',\n meta: {\n text: 'Features',\n icon: 'settings_system_daydream',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['SuperAdmin'],\n readOnlyRoles: ['Admin', 'SuperUser', 'Guest', 'Standard'],\n },\n })\n }\n\n return paths\n },\n pathNamesForCurrentRole: (_state, getters) =>\n new Set(['', '/login', ...getters.pathsForCurrentRole.map(x => x.path)]),\n folders: (_state, getters) => {\n const firstPathForFolder = getters.pathsForCurrentRole.reduce((acc, item) => {\n const folder = item.path.match(/\\/(.*)\\//)[1].toUpperCase()\n if (!acc[folder]) {\n acc[folder] = item.path\n }\n return acc\n }, {})\n\n return Object.keys(firstPathForFolder).map(folder => ({\n icon: folderIcons[folder],\n folder,\n firstPath: firstPathForFolder[folder],\n }))\n },\n filteredItems: (_state, getters) => {\n const clientId = +localStorage.getItem('selectedClientId')\n const isMaster = clientId == 0\n const items = getters.folders.map(item => ({\n icon: 'keyboard_arrow_up',\n 'icon-alt': 'keyboard_arrow_down',\n text: item.folder,\n folderIcon: item.icon,\n expanded: false,\n children: getItemsFromFolder(\n getters.pathsForCurrentRole,\n '/' + item.folder.toLowerCase(),\n isMaster,\n ),\n }))\n\n return [\n {\n icon: 'stars',\n text: 'Home',\n to: '/',\n },\n ...items,\n ]\n },\n visibleModules: (state, getters) => [\n ...new Set(getters.pathsForCurrentRole.map(item => item && item.meta.module).filter(Boolean)),\n ],\n hasProcessManager: (state, getters) => {\n return getters.pathsForCurrentRole.some(x => x.path === '/process/manager')\n },\n hasOrders: (state, getters) => {\n return getters.pathsForCurrentRole.some(x => x.path.endsWith('order'))\n },\n hasInstruction: (state, getters) => {\n return getters.pathsForCurrentRole.some(x => x.path === '/list/instruction')\n },\n history: state => state.history,\n },\n}\n","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport authentication from './authentication.module'\nimport app from './app.module'\n\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n modules: {\n authentication,\n app,\n },\n})\n","import axios from 'axios'\nimport createAuthRefreshInterceptor from 'axios-auth-refresh'\nimport store from '../store'\nimport router from '../router'\nimport notification from '../helpers/notification'\n\nasync function logout() {\n await store.dispatch('authentication/logout')\n const {fullPath} = router.currentRoute\n const loginRoute = {\n path: '/login',\n }\n\n if (fullPath != '/login') {\n loginRoute.query = {\n returnUrl: fullPath,\n }\n }\n\n router.push(loginRoute)\n\n notification('Your session expired, please login again')\n}\n\nasync function requestToken() {\n const {'authentication/tokenString': tokenString, 'authentication/token': token} = store.getters\n if (token) {\n if (store.getters['authentication/refreshToken']) {\n await store.dispatch('authentication/startRefreshTokenInterval', {immediate: true})\n }\n\n console.log(axios.defaults.headers.common['Authorization'])\n\n const expiration = new Date(token.exp * 1000)\n const now = new Date().getTime()\n if (now > expiration) {\n if (store.getters['authentication/refreshToken']) {\n await store.dispatch('authentication/getNewAccessToken')\n } else {\n await logout()\n }\n }\n }\n if (tokenString) {\n axios.defaults.headers.common['Authorization'] = `Bearer ${tokenString}`\n }\n}\n\nrequestToken()\n\n// Instantiate the interceptor (you can chain it as it returns the axios instance)\ncreateAuthRefreshInterceptor(axios, requestToken)\n\nkendo.jQuery.ajaxSetup({\n // Inject the JWT token to kendo jQuery dependence\n beforeSend: xhr => {\n const tokenString = store.getters['authentication/tokenString']\n if (tokenString) {\n xhr.setRequestHeader('Authorization', `Bearer ${tokenString}`)\n }\n },\n statusCode: {\n // Logout if 401 responses are caught on kendo\n 401: async function() {\n if (!store.getters['authentication/refreshToken']) {\n return logout()\n }\n await requestToken()\n kendo.jQuery.ajax(this)\n },\n },\n})\n\n// Logout if 401 responses are caught on axios\naxios.interceptors.response.use(undefined, function(err) {\n return new Promise(function(resolve, reject) {\n if (err.status === 401 && err.config && !err.config.__isRetryRequest) {\n resolve()\n logout()\n }\n reject(err)\n })\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"text-xs-center\":\"\"}},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(!_vm.welcomeVisible)?_c('v-flex',{staticClass:\"hidden-sm-and-down\",attrs:{\"mb-4\":\"\"}},[_c('v-img',{attrs:{\"src\":\"/api/config/Client/getLogo?clientId=0\",\"contain\":\"\",\"height\":\"50\"}})],1):_vm._e()],1),_c('transition',{attrs:{\"name\":\"bounce\",\"mode\":\"out-in\"}},[(!_vm.welcomeVisible)?_c('v-container',{key:\"2\"},[_c('home-dashboard')],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},_vm._l((_vm.items),function(item,index){return _c('v-flex',{key:index,attrs:{\"sm4\":\"\",\"md3\":\"\",\"xs12\":\"\"}},[(item.markets && Object.keys(item.markets).length > 1)?_c('v-menu',{attrs:{\"offset-y\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"flat\":\"\",\"color\":\"primary\"},slot:\"activator\"},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(_vm._s(item.icon))]),_vm._v(\" \"+_vm._s(item.text)+\"\\n \")],1),_c('v-list',_vm._l((_vm.clientMarketsSorted),function(ref,index){\nvar marketName = ref[0];\nvar marketId = ref[1];\nreturn _c('v-list-tile',{key:index,on:{\"click\":function($event){return _vm.goToMarketNode(marketId, item.to)}}},[_c('v-list-tile-title',[_vm._v(_vm._s(marketName))])],1)}),1)],1):(item.subItems)?_c('v-menu',{attrs:{\"offset-y\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"flat\":\"\",\"color\":\"primary\"},slot:\"activator\"},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(_vm._s(item.icon))]),_vm._v(\" \"+_vm._s(item.text)+\"\\n \")],1),_c('v-list',_vm._l((item.subItems),function(subItem,index){return _c('v-list-tile',{key:index,attrs:{\"to\":subItem.to,\"disabled\":!subItem.to && !subItem.click},on:{\"click\":function($event){subItem.click && subItem.click($event)}}},[_c('v-list-tile-title',[_c('v-icon',[_vm._v(_vm._s(subItem.icon))]),_vm._v(\"\\n \"+_vm._s(subItem.text))],1)],1)}),1)],1):_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\",\"to\":item.to},on:{\"click\":function($event){item.click && item.click($event)}}},[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(_vm._s(item.icon))]),_vm._v(\" \"+_vm._s(item.text)+\"\\n \")],1)],1)}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","function setCookie(name, value, minutes) {\n let expires = ''\n if (minutes) {\n const date = new Date()\n date.setTime(date.getTime() + minutes * 60 * 1000)\n expires = ';expires=' + date.toUTCString()\n }\n document.cookie = `${name}=${value || ''}${expires}; path=/`\n}\n\nfunction getCookie(name) {\n var nameEQ = name + '='\n var ca = document.cookie.split(';')\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i]\n while (c.charAt(0) == ' ') c = c.substring(1, c.length)\n if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length)\n }\n return null\n}\n\nfunction eraseCookie(name) {\n document.cookie = name + '=; Max-Age=-99999999;'\n}\n\nexport default {\n setCookie,\n getCookie,\n eraseCookie,\n}\n","\n \n \n \n \n 1\">\n \n {{ item.icon }} {{ item.text }}\n \n \n \n {{ marketName }}\n \n \n \n \n \n {{ item.icon }} {{ item.text }}\n \n \n \n \n {{ subItem.icon }}\n {{ subItem.text }}\n \n \n \n \n {{ item.icon }} {{ item.text }}\n \n \n \n \n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomeDashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomeDashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HomeDashboard.vue?vue&type=template&id=65fbaab8&\"\nimport script from \"./HomeDashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./HomeDashboard.vue?vue&type=script&lang=js&\"\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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListTile } from 'vuetify/lib/components/VList';\nimport { VListTileTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\ninstallComponents(component, {VBtn,VCard,VContainer,VFlex,VIcon,VLayout,VList,VListTile,VListTileTitle,VMenu})\n","\n \n \n \n \n \n \n \n \n \n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../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=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../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=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=66678863&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VImg } from 'vuetify/lib/components/VImg';\ninstallComponents(component, {VContainer,VFlex,VImg})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"max-width\":\"432\"}},[(!_vm.isLoggedIn)?_c('v-form',{ref:\"form\",staticClass:\"login\",on:{\"submit\":function($event){$event.preventDefault();return _vm.login($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-title',{staticClass:\"title font-weight-regular justify-space-between\"},[_c('v-img',{attrs:{\"src\":\"/api/config/Client/getLogo?clientId=0\",\"contain\":\"\",\"height\":\"32\"}})],1),_c('v-card-text',[_c('v-text-field',{attrs:{\"label\":\"E-mail\",\"data-vv-name\":\"email\",\"required\":\"\",\"rules\":_vm.emailRules,\"autofocus\":\"\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_c('v-text-field',{attrs:{\"type\":'password',\"label\":\"Password\",\"data-vv-name\":\"password\",\"required\":\"\",\"rules\":[function (v) { return !!v || 'Password is required'; }]},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('v-divider'),_c('v-card-actions',[_c('v-btn',{class:{blue: !_vm.valid, success: _vm.valid},attrs:{\"type\":\"submit\"}},[_vm._v(\"login\")]),_c('v-btn',{attrs:{\"type\":\"reset\"}},[_vm._v(\"clear\")])],1)],1):_c('h2'),_c('v-alert',{attrs:{\"value\":_vm.authStatus == 'error',\"type\":\"error\"}},[_vm._v(\" Invalid username or password.\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n\n \n \n !!v || 'Password is required']\"\n >\n \n\n \n\n \n login\n clear\n \n \n \n Invalid username or password.\n \n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/vuetify-loader/lib/loader.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=ce5fbc56&\"\nimport script from \"./Login.vue?vue&type=script&lang=js&\"\nexport * from \"./Login.vue?vue&type=script&lang=js&\"\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\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDivider,VForm,VImg,VTextField})\n","import Home from './views/Home.vue'\nimport Login from './views/Login.vue'\n\nconst markets = {Base: -1, FX: 1, IR: 2, AG: 3, Metal: 4, Energy: 5, Other: 6}\n\nconst sitemap = [\n {\n path: '/',\n name: 'home',\n component: Home,\n meta: {\n text: 'Home',\n requiresAuth: true,\n },\n },\n {\n path: '/login',\n name: 'login',\n component: Login,\n meta: {\n text: 'Login',\n },\n },\n //###############################################################\n //####################### LIST ##################################\n {\n path: '/list/otc-trade',\n name: 'list-otc-trade',\n meta: {\n text: 'OTC Trade',\n icon: 'attach_money',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () => import(/* webpackChunkName: \"list\" */ './views/List/Deal/Index.vue'),\n },\n {\n path: '/list/otc-histo',\n name: 'list-otc-histo',\n meta: {\n text: 'OTC Histo',\n icon: 'attach_money',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/HerouxTrade.vue'),\n },\n {\n path: '/list/order',\n name: 'list-order',\n meta: {\n text: 'Order',\n icon: 'attach_money',\n requiresAuth: true,\n module: 'Base',\n markets,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser', 'Guest', 'Standard'],\n readOnlyRoles: ['Guest'],\n },\n component: () => import(/* webpackChunkName: \"list\" */ './views/List/Order/Index.vue'),\n },\n {\n path: '/list/Rates',\n name: 'list-Rates',\n meta: {\n text: 'Rates',\n icon: 'show_chart',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/List/FxRates.vue'),\n },\n {\n path: '/list/cashflow',\n name: 'list-cashflow',\n meta: {\n text: 'CashFlow',\n icon: 'autorenew',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/List/DivisionForecast.vue'),\n },\n {\n path: '/list/future',\n name: 'list-future',\n meta: {\n text: 'Future',\n icon: 'blur_linear',\n module: 'Base',\n markets,\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser', 'Guest', 'Standard'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/List/Future/Index.vue'),\n },\n {\n path: '/list/fx-volatility',\n name: 'list-fx-volatility',\n meta: {\n text: 'FX Volatility',\n icon: 'priority_high',\n module: 'Base',\n markets: {FX: 1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser', 'Guest', 'Standard'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/List/FxVolatility.vue'),\n },\n //###############################################################\n //####################### Report ################################\n {\n path: '/report/exposure',\n name: 'exposure-report',\n meta: {\n text: 'Exposure',\n icon: 'fas fa-chart-line',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"reports\" */ './views/Report/ExposureReport.vue'),\n },\n {\n path: '/report/exposure-v4',\n name: 'exposure-report-v4',\n meta: {\n text: 'Exposure V4.0',\n icon: 'fas fa-chart-line',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"reports\" */ './views/Report/ExposureV4.vue'),\n },\n {\n path: '/report/expiry-option',\n name: 'expiry-option-report',\n meta: {\n text: 'Expiry Option',\n icon: 'fa fa-backspace',\n module: 'Base',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"reports\" */ './views/Report/ExpiryOption.vue'),\n },\n {\n path: '/report/last-next-orders',\n name: 'report-last-next-orders',\n meta: {\n text: 'Last / Next Orders',\n icon: 'fas fa-step-forward',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"reports\" */ './views/Report/OrderLastNextTransactions.vue'),\n },\n {\n path: '/report/last-next-transactions',\n name: 'report-last-next-transactions',\n meta: {\n text: 'Last / Next Transactions',\n icon: 'fas fa-fast-forward',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"reports\" */ './views/Report/LastNextTransactions.vue'),\n },\n {\n path: '/report/future-past-distributed-hedge',\n name: 'future-past-distributed-hedge',\n meta: {\n text: 'Future/Past Distributed Hedge',\n icon: 'compare_arrows',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"reports\" */ './views/Report/FuturePastDistributedHedge.vue'),\n },\n {\n path: '/report/base-marketdata',\n name: 'report-base-marketData',\n meta: {\n text: 'Market Data',\n icon: 'timeline',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/MarketData.vue'),\n },\n {\n path: '/report/dashboards',\n name: 'report-dashboards',\n meta: {\n text: 'Dashboards',\n icon: 'art_track',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/DashboardTabs.vue'),\n },\n {\n path: '/report/base-dashboard',\n name: 'report-base-dashboard',\n meta: {\n text: 'Dashboard',\n icon: 'art_track',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/DashboardPage.vue'),\n },\n {\n path: '/report/dashboard-files',\n name: 'report-dashboard-files',\n meta: {\n text: 'Dashboard Files',\n icon: 'art_track',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/DashboardFiles.vue'),\n },\n {\n path: '/report/fx-bid-rate',\n name: 'report-fx-bid-rate',\n meta: {\n text: 'FX Bid Rate',\n icon: 'trending_up',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/FxBidRatePricer.vue'),\n },\n {\n path: '/report/master-exposure',\n name: 'report-master-exposure',\n meta: {\n text: 'Master Exposure',\n icon: 'vertical_split',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/MasterExposure.vue'),\n },\n\n //###############################################################\n //####################### month end #########################\n {\n path: '/month end/bon-coup',\n name: 'month-end-bon-coup',\n meta: {\n text: 'Bon Coup',\n icon: 'thumb_up',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Report/DashboardTabs.vue'),\n },\n {\n path: '/month end/undelivered-balance',\n name: 'month-end-undelivered-balance',\n meta: {\n text: 'Undelivered Balance',\n icon: 'fas fa-bullhorn',\n module: 'Base',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"reports\" */ './views/Report/UndeliveredBalance.vue'),\n },\n {\n path: '/month end/message',\n name: 'month-end-message',\n meta: {\n text: 'Message',\n icon: 'mark_email_read',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/SendingMessage.vue'),\n },\n {\n path: '/month end/text',\n name: 'month-end-text',\n meta: {\n text: 'Text',\n icon: 'outgoing_mail',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/SendText.vue'),\n },\n\n //###############################################################\n //####################### Config #########################\n {\n path: '/config/sector',\n name: 'config-sector',\n meta: {\n text: 'Sector',\n icon: 'flip_to_front',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Sector.vue'),\n },\n {\n path: '/config/dashboard-scenario',\n name: 'dashboard-scenario',\n meta: {\n text: 'Dashboard Scenarios',\n icon: 'flip_to_back',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Config/DashboardScenario/Index.vue'),\n },\n\n {\n path: '/config/division',\n name: 'config-division',\n meta: {\n text: 'Division',\n icon: 'flip_to_back',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Division/Index.vue'),\n },\n {\n path: '/config/productDivision',\n name: 'config-product-division',\n meta: {\n text: 'Product Division',\n icon: 'highlight_alt',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/ProductDivision.vue'),\n },\n {\n path: '/config/counterparty',\n name: 'config-counterparty',\n meta: {\n text: 'Counterparty',\n icon: 'account_balance',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Counterparty.vue'),\n },\n {\n path: '/config/period',\n name: 'config-period',\n meta: {\n text: 'Period',\n icon: 'calendar_today',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Period/Index.vue'),\n },\n {\n path: '/config/CommodityCurrency',\n name: 'config-commodity-currency',\n meta: {\n text: 'Commodity Currency',\n icon: 'fas fa-hand-holding-usd',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Currency.vue'),\n },\n {\n path: '/config/CommodityCcyPair',\n name: 'config-commodity-ccy-pair',\n meta: {\n text: 'Commodity Ccy Pair',\n icon: 'fas fa-file-invoice-dollar',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/CcyPair.vue'),\n },\n {\n path: '/config/HedgePolicy',\n name: 'config-hedgePolicy',\n meta: {\n text: 'Hedge Policy',\n icon: 'vertical_split',\n module: 'Base',\n markets,\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/HedgePolicy.vue'),\n },\n {\n path: '/config/flowType',\n name: 'config-base-flowType',\n meta: {\n text: 'Flow Type',\n icon: 'fas fa-th-list',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/FlowType/Index.vue'),\n },\n {\n path: '/config/base-HedgeType',\n name: 'config-base-hedgeType',\n meta: {\n text: 'Hedge Type',\n icon: 'library_books',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/HedgeType/Index.vue'),\n props: {\n marketId: 1,\n },\n },\n {\n path: '/config/GroupCategory',\n name: 'config-groupCategory',\n meta: {\n text: 'Group Category',\n icon: 'group_work',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/GroupCategory.vue'),\n },\n {\n path: '/config/future-contract',\n name: 'config-base-future',\n meta: {\n text: 'Future Contract',\n icon: 'blur_linear',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser', 'Guest', 'Standard'],\n readOnlyRoles: ['Guest', 'Standard', 'SuperUser'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/Future/Index.vue'),\n },\n {\n path: '/config/volatilityCurves',\n name: 'config-volatility-curves',\n meta: {\n text: 'FX Volatility Curves',\n icon: 'request_quote',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Config/VolatilityCurves.vue'),\n },\n {\n path: '/config/fxAlert',\n name: 'config-fx-alert',\n meta: {\n text: 'FX Alert',\n icon: 'request_quote',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Config/FxAlert.vue'),\n },\n //###############################################################\n //####################### Process ###############################\n {\n path: '/process/manager',\n name: 'process-manager',\n meta: {\n text: 'Process Manager',\n icon: 'fas fa-cogs',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/Process/ProcessManager.vue'),\n },\n //###############################################################\n //####################### Client ################################\n {\n path: '/client/list',\n name: 'client-list',\n meta: {\n text: 'List',\n icon: 'view_list',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['SuperAdmin'],\n readOnlyRoles: ['Admin', 'Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"config\" */ './views/Config/Client/Index.vue'),\n },\n {\n path: '/client/profile',\n name: 'client-profile',\n meta: {\n text: 'Profile',\n icon: 'fa-user-circle',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin'],\n readOnlyRoles: ['SuperUser', 'Guest', 'Standard'],\n },\n component: () => import(/* webpackChunkName: \"config\" */ './views/Config/Client/Profile.vue'),\n },\n {\n path: '/client/features',\n name: 'client-configuration',\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/ApplicationConfiguration.vue'),\n meta: {\n text: 'Features',\n icon: 'settings_system_daydream',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['SuperAdmin', 'Admin'],\n readOnlyRoles: ['Admin', 'SuperUser', 'Guest', 'Standard'],\n },\n },\n {\n path: '/client/users',\n name: 'user-manager',\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/UserManager.vue'),\n meta: {\n text: 'Users',\n icon: 'supervisor_account',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin'],\n readOnlyRoles: ['SuperUser', 'Guest', 'Standard'],\n },\n },\n //###############################################################\n //####################### Security ##############################\n {\n path: '/security/auditLog',\n name: 'security-audit-log',\n meta: {\n text: 'Audit',\n icon: 'line_weight',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin'],\n },\n component: () => import(/* webpackChunkName: \"sitemap\" */ './views/AuditLog.vue'),\n },\n //###############################################################\n //####################### Heroux Client #########################\n {\n path: '/list/fx-designation',\n name: 'list-fx-designation',\n meta: {\n text: 'Fx Designation',\n icon: 'attach_money',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/FxDesignation.vue'),\n },\n {\n path: '/list/tradeEvaluation',\n name: 'list-trade-evaluation',\n meta: {\n text: 'Trade Evaluation',\n icon: 'attach_money',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/TradeEvaluation.vue'),\n },\n {\n path: '/list/instruction',\n name: 'list-instruction',\n meta: {\n text: 'Instruction',\n icon: 'attach_money',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/Instruction.vue'),\n },\n {\n path: '/report/HerouxExposure',\n name: 'heroux-exposure-report',\n meta: {\n text: 'Heroux FX Exposure',\n icon: 'fas fa-chart-line',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"reports\" */ './views/Clients/Heroux/Report/ExposureReport/Index.vue'),\n },\n {\n path: '/report/FfecReconciliation',\n name: 'heroux-report-ffec-rec',\n meta: {\n text: 'FFEC Reconciliation',\n icon: 'speaker_notes',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/Reports/FfecReconciliation.vue'),\n },\n {\n path: '/report/RollSummary',\n name: 'heroux-report-roll-summary',\n meta: {\n text: 'Roll Summary',\n icon: 'rotate_left',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/Reports/RollSummary.vue'),\n },\n {\n path: '/report/Summary',\n name: 'heroux-report-summary',\n meta: {\n text: 'Summary',\n icon: 'vertical_split',\n module: 'FX',\n markets: {FX: 1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/Reports/Summary.vue'),\n },\n {\n path: '/config/HerouxPeriod',\n name: 'config-heroux-period',\n meta: {\n text: 'Period',\n icon: 'calendar_today',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/Config/Period.vue'),\n },\n {\n path: '/config/signator',\n name: 'config-signator',\n meta: {\n text: 'Signator',\n icon: 'gesture',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/Signator.vue'),\n },\n {\n path: '/config/sector-account',\n name: 'config-sector-account',\n meta: {\n text: 'Account',\n icon: 'attach_money',\n module: 'Base',\n markets: {Base: -1},\n requiresAuth: true,\n readOnlyRoles: ['Guest'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/List/SectorAccount.vue'),\n },\n {\n path: '/marketdata/currency',\n name: 'heroux-marketdata-currency-rate',\n meta: {\n text: 'Currency',\n icon: 'show_chart',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/InterestRate/Index.vue'),\n props: {\n rateType: 4,\n },\n },\n {\n path: '/marketdata/spot-rate',\n name: 'heroux-md-spot-rate',\n meta: {\n text: 'Spot Rate',\n icon: 'fas fa-dot-circle',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/FxRate/Index.vue'),\n },\n {\n path: '/marketdata/reset-ccy-rate',\n name: 'heroux-md-reset-ccy-rate',\n meta: {\n text: 'Reset Ccy Rate',\n icon: 'fas fa-dot-circle',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/ResetCcyRate/Index.vue'),\n },\n {\n path: '/marketdata/reset-rate',\n name: 'heroux-md-reset-rate',\n meta: {\n text: 'Reset Rate',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/ResetRate/Index.vue'),\n },\n {\n path: '/marketdata/primary-rate',\n name: 'heroux-md-primary-rate',\n meta: {\n text: 'Primary Rate',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/PrimaryRate/Index.vue'),\n },\n {\n path: '/marketdata/credit-spread',\n name: 'heroux-md-credit-spread',\n meta: {\n text: 'Credit Spread',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/CreditSpread/Index.vue'),\n },\n {\n path: '/marketdata/df-1-months',\n name: 'heroux-md-ir-df-1m',\n meta: {\n text: 'DF 1 Month',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/InterestRate/Index.vue'),\n props: {\n rateType: 2,\n },\n },\n {\n path: '/marketdata/zero-rates',\n name: 'heroux-md-zero-rates',\n meta: {\n text: 'Zero Rates',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/InterestRate/Index.vue'),\n props: {\n rateType: 1,\n },\n },\n {\n path: '/marketdata/credit-risk',\n name: 'heroux-md-ir-credit-risk',\n meta: {\n text: 'Credit Risk',\n icon: 'blur_circular',\n module: 'Base',\n requiresAuth: true,\n requiresRole: ['Admin', 'SuperAdmin', 'SuperUser'],\n readOnlyRoles: ['Guest', 'Standard'],\n },\n component: () =>\n import(/* webpackChunkName: \"sitemap\" */ './views/Clients/Heroux/MarketData/InterestRate/Index.vue'),\n props: {\n rateType: 5,\n },\n },\n]\n\nexport default sitemap\n","import Vue from 'vue'\nimport Toasted from 'vue-toasted'\nVue.use(Toasted)\n\nconst config = {\n position: 'top-right',\n duration: 3000,\n className: ['vue-toast'],\n action: [\n {\n icon: 'close',\n onClick: (e, toastObject) => {\n toastObject.goAway(0)\n },\n },\n ],\n}\n\nVue.toasted.register(\n 'info',\n function(message) {\n return message\n },\n {...config, icon: 'check_circle'},\n)\n\nVue.toasted.register(\n 'error',\n function(message) {\n return message\n },\n {...config, icon: 'error', className: ['vue-toast-error']},\n)\n\nVue.toasted.register(\n 'success',\n function(message) {\n return message\n },\n {...config, icon: 'done'},\n)\n\nexport default function(message, type = 'info') {\n if (type !== 'exception') {\n return Vue.toasted.global[type](message)\n }\n}\n","export function getItemsFromFolder(applicationPaths, folder) {\n return applicationPaths\n .filter(el => el.path.startsWith(folder) && el.meta)\n .map(({meta, path, text, icon}) => ({\n text: text != null ? text : meta.text,\n to: path,\n icon: icon != null ? icon : meta.icon,\n module: meta.module || '',\n meta,\n }))\n}\n\nexport function getItemsFromFolderAndMarket(applicationPaths, folder, market) {\n return getItemsFromFolder(applicationPaths, folder).filter(\n item => item.module == market || (item.meta.markets && item.meta.markets[market] != null),\n )\n}\n\nexport const folderIcons = {\n LIST: 'view_list',\n REPORT: 'dashboard',\n 'MONTH END': 'insert_invitation',\n CONFIG: 'build',\n CLIENT: 'fa-address-card',\n SECURITY: 'security',\n MARKETDATA: 'timeline',\n PROCESS: 'fas fa-cog',\n}\n"],"sourceRoot":""}