{"version":3,"sources":["webpack:///./src/services/app-storage.js","webpack:///./src/plugins/vuetify.js","webpack:///./src/store/index.js","webpack:///./src/assets/logo_b_sm.png","webpack:///./src/services/client-report.js","webpack:///./src/services/backend-api.js","webpack:///./src/services/backend-queue-api.js","webpack:///./src/components/Confirm.vue?14b1","webpack:///src/components/Confirm.vue","webpack:///./src/components/Confirm.vue?63cf","webpack:///./src/components/Confirm.vue","webpack:///./src/assets/elphy_agent_logo_color.png","webpack:///./src/services/backend-report-api.js","webpack:///./src/services/mixins.js","webpack:///./src/assets/logo_sm.png","webpack:///./src/services/helpers.js","webpack:///./src/validator.js"],"names":["__webpack_exports__","setJwtAuthToken","token","refreshToken","rememberMe","localStorage","setItem","removeItem","sessionStorage","clearJwtAuthToken","getJwtAuthToken","getItem","getRefreshToken","setReadAnnouncement","id","ReadAnnouncements","items","JSON","parse","includes","push","stringify","updateReadAnnouncement","ids","_iteratorNormalCompletion","_didIteratorError","_iteratorError","undefined","_step","_loop","item","value","filter","f","_iterator","Symbol","iterator","next","done","err","return","resetReadAnnouncement","isReadAnnouncement","getLastActivityDate","setLastActivityDate","_value","__webpack_require__","vue__WEBPACK_IMPORTED_MODULE_1__","vuetify__WEBPACK_IMPORTED_MODULE_2__","vuetify__WEBPACK_IMPORTED_MODULE_2___default","n","Vue","use","Vuetify","rtl","theme","themes","light","primary","secondary","accent","error","info","success","warning","icons","iconfont","Vuex","store","Store","state","ecApiBaseUrl","helpers","ecApiMonitorServer","cartItems","clientCredit","clientContract","accountInfo","toast","isOpen","text","mode","storePurchaseRequiredAlert","confirm","title","action","loading","lazyLoading","clientId","userId","deletePrevntedAlert","deletePrevntedItem","notReadSupportTicketsCount","appMode","window","appConfig","fileUploaderOpen","fileUploadedAction","fileUploaderKey","fileUploaderSpecialMode","userRoles","displayCategorys","agentManifest","variables","cities","name","focusedInfoItemName","layoutGoBackPath","monitoringConnection","monitoringRtcConnection","rtcChannelState","iceServer","isInactivityTimeoutEnable","signageMuted","copyForLayout","elphyQueueServerError","posResponse","pwaUpdated","adhanPlaying","currentSessionCache","inQueueReportApiPosts","previewApiKey","previewApiKeyExpiration","refreshingToken","tokenLikelyExpired","captchaAutorized","infoitemRedirectPayloads","isQmsLocal","qmsBranchDepartmentId","qmsBrancId","mutations","openFileUploader","before","setFileUploadedAction","_action","setFileUploaderSpecialMode","closeFileUploader","addCartItem","_cartItem","removeCartItem","_id","index","findIndex","splice","plusCartItem","count","minusCartItem","emptyCart","setClientCredit","_clientCredit","setClientContract","_clientContract","setNotReadSupportTicketsCount","_count","setAccountInfo","_accountInfo","setToast","_conifg","close","timer","closeToast","setStorePurchaseRequiredAlert","Object","C_Users_emoha_Documents_Repo_ElphyCloud_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_4__","closeStorePurchaseRequiredAlert","setConfirm","closeConfirm","loadingStarted","loadingEnded","lazyLoadingStarted","lazyLoadingEnded","setClientId","_clientId","setUserId","_userId","showDeletePrevntedAlert","hideDeletePrevntedAlert","setDeletePrevntedItem","_item","setUserRoles","_roles","setDisplayCategorys","_cats","setAgentManifest","_manifest","setVariables","_variables","setFocusedInfoItemName","_name","setLayoutGoBackPath","_path","setMonitoringConnection","_connection","setMonitoringRtcConnection","setRtcChannelState","_state","setIceServer","_iceServer","setIsInactivityTimeoutEnable","setSignageMuted","setCopyForLayout","setElphyQueueServerError","setPosResponse","setPwaUpdated","setAdhanPlaying","submitCurrentSessionCache","infoItemId","identifier","removeCurrentSessionCache","InitInQueueReportApiPosts","posts","length","addToInQueueReportApiPosts","_post","updateInQueueReportApiPosts","status","setPreviewApiKey","Date","getTime","valueOf","setRefreshingToken","setTokenLikelyExpired","setCaptchaAutorized","addInfoitemRedirectPayloads","find","removeInfoitemRedirectPayloads","setIsQmsLocal","setQmsBranchDepartmentId","setQmsBranchId","getters","hasActiveContract","isActive","cartItemsCount","cartItemsTotalPrice","totalPrice","map","stockItem","price","reduce","a","b","totalDiscount","discount","totalSubscription","monthlyFee","totalPayment","cartItemPrice","cartHasShipping","type","accountInfoAlertsCount","emailConfirmed","phoneNumberConfirmed","displayCategorysNames","variable","_user","startsWith","concat","Intl","DateTimeFormat","day","month","year","numberingSystem","format","now","v","currentSessionCacheById","actions","relayCommand","_ref","_payload","dispatch","Promise","resolve","reject","_apiKey","apiKey","_command","command","_displayCategoryId","displayCategoryId","flashLayoutUpdate","then","response","api","ecapi","get","params","categoryId","data","catch","getPreviewApiKey","_ref2","commit","updateClientCredit","_ref3","logOut","signOut","post","finally","refreshAccessToken","_ref4","validTime","time","setTimeout","tokenTimeoutDispatch","_ref5","updateNotReadSupportTicketsCount","_ref6","updateAccountInfo","_ref7","updateCart","_ref8","forEach","submitAddCartItem","_ref9","storeItemId","stockItemId","submitRemoveCartItem","_ref10","delete","submitPlusCartItem","_ref11","patch","submitMinusCartItem","_ref12","updateDisplayCategorys","_ref13","updateAgentManifest","_ref14","module","exports","p","getReport","definePropertySupported","userAgent","report","match","uuid","navigator","browser","version","cookies","flash","ip","java","os","screen","colors","dppx","height","width","scripts","viewport","layout","zoom","websockets","indexOf","innerWidth","document","documentElement","clientWidth","innerHeight","clientHeight","defineProperty","e","replace","c","r","Math","random","toString","plugins","i","l","plugin","description","versions","split","minorVersion","parseInt","colorDepth","devicePixelRatio","isNaN","WebSocket","lang","languages","language","timestamp","jwt","storage","ecapiInstanceBaseUrl","inactivityTimeout","Number","inactivityTimeoutIndex","ecapiAuthorizationValue","ecapiHeaders","x-app-id","Authorization","ecapiInstance","axios","create","baseURL","timeout","externalInstance","resetInActivityTimeout","location","pathname","toLowerCase","clearTimeout","getTempCache","_tempCacheId","until","conditionFunction","poll","interceptors","request","C_Users_emoha_Documents_Repo_ElphyCloud_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_4__","regeneratorRuntime","mark","_callee","config","tempCacheId","tempCache","wrap","_context","prev","url","metadata","C_Users_emoha_Documents_Repo_ElphyCloud_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_0__","adapter","__cached","headers","method","abrupt","stop","_x","apply","this","arguments","crntVersion","_callee2","_context2","sent","t0","createMessageFromApiResponse","_x2","test","external","eqapiInstanceBaseUrl","eqApiBaseUrl","eqapiHeaders","eqapiInstance","C_Users_emoha_Documents_Repo_ElphyCloud_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_3__","goToLoginPage","eqapi","render","_vm","_h","$createElement","_c","_self","style","zIndex","options","attrs","max-width","on","keydown","$event","_k","keyCode","key","cancel","model","callback","$$v","dialog","expression","dark","color","dense","flat","staticClass","_v","_s","directives","rawName","message","nativeOn","click","agree","staticRenderFns","Confirmvue_type_script_lang_js_","resolved","rejected","methods","open","self","assign","components_Confirmvue_type_script_lang_js_","component","componentNormalizer","erapiInstanceBaseUrl","erApiBaseUrl","erapiHeaders","erapiInstance","erapi","mixin","created","addEventListener","mxPwaUpdated","mxSimpleGet","source","mxGetPersianDate","_date","persianDate","mxGetPersianDateTimeByFormat","_format","mxGetPriceInTomanLocale","_price","_alreadyInToman","tomanPrice","ceil","toLocaleString","mxGetPriceInTomanLocaleNum","mxGetCartItemPrice","mxDownloadClientFile","_fileName","_originalName","_this","passKey","downloadURI","encodeURI","mxDownloadLayoutTemplate","_layoutId","_isClientTemplate","_this2","floor","uri","link","createElement","download","href","body","appendChild","removeChild","mxSuccessToast","mxHasRole","role","some","mxAdminHasRole","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","mxFileSize","_size","mxTruncate","_string","_length","substring","mxConfirm","_message","mxAlert","alert","mxProccessText","_text","onlyVariables","matches","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","regex","RegExp","replacement","serviceMatches","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_step4","_iterator4","mxGetInfoModuleIcon","_codeName","mxGetInfoModuleColor","mxGetInfoModuleBgColor","mxGetColorCode","_color","mxGetInfoModuleTextBgColor","mxGetInfoModuleTextColor","mxOrderInfoModules","_modules","_iteratorNormalCompletion5","_didIteratorError5","_iteratorError5","_step5","_iterator5","mlodule","infoModuleCodeName","order","mxCheckAgentVersion","_browser","_browserVersion","agentVersion","ElphyAgentVersion","currentVersion","currentVersionSegments","versionSegments","mxSetMonitoringConnection","mxGetMonitoringConnection","mxSetMonitoringRtcConnection","mxGetMonitoringRtcConnection","mxSetRtcChannelState","mxGetIceServer","mxSetPosResponse","_response","mxGoHome","dispatchEvent","CustomEvent","mxHasClientEnoughFreeSpace","signageStorageUsed","storageIndex","initialStorage","perIndexStorage","storageSpace","mxConvertToEnglishNumber","_input","persianNumbers","englishNumbers","mxCheckForPlaybackExpDate","_items","expDate","airDate","mxSubmitPlaybackReport","_reportItem","$route","query","preview","today","getFullYear","String","getMonth","padStart","getDate","reportString","previousRecord","contentId","date","contentName","totalDuration","mxSecondsToHMS","seconds","hours","minutes","secs","mxLightenHexColor","hex","percent","slice","g","lighten","min","newR","newG","newB","toHex","toUpperCase","mxDarkenHexColor","Error","darken","max","mxFlipHexColor","cleanHex","luminance","isLight","adjust","mxFlipHexColor0","percentage","C_Users_emoha_Documents_Repo_ElphyCloud_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__","join","adjustment","clamp","channel","round","mxIsLightColor","mxCouldUseLocalCacheOnError","connectionError","copyToClipboard","element","getElementById","textArea","position","focus","select","execCommand","localStorageServer","remoteStorageServer","localServer","urlParams","decodeURIComponent","_","localserver","ec_api_url","console","log","storageserver","_unused","storage_server","btoa","goToClientPanel","goToAdminPanel","goToSignagePage","goToPwaPage","clearStorage","_startsWith","keysToBeDeleted","_i","_keysToBeDeleted","resolveSchedules","schedules","timePeriod","currentLayoutId","currentScheduleId","registerServiceWorker","newWorker","refreshing","prod","process","shouldSW","serviceWorker","register","reg","setInterval","update","installing","controller","postMessage","downloadTextFile","filename","setAttribute","encodeURIComponent","display","ecBaseUrl","ecMonitorServer","monitor_server","queue_server","eqBaseUrl","esApiBaseUrl","store_server","esBaseUrl","report_server","erBaseUrl","enApiBaseUrl","notify_server","enBaseUrl","eqmApiBaseUrl","queue_monitor_server","eqmBaseUrl","storageServerBaseUrl","vue__WEBPACK_IMPORTED_MODULE_0__","vee_validate__WEBPACK_IMPORTED_MODULE_1__","vee_validate_dist_locale_fa__WEBPACK_IMPORTED_MODULE_2__","vee_validate_dist_locale_fa__WEBPACK_IMPORTED_MODULE_2___default","VeeValidate","classes","classNames","valid","invalid","Validator","localize","fa"],"mappings":"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E,KAAM,MACN1E,MAAO,QAET,CACE0E,KAAM,SACN1E,MAAO,YAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,QACN1E,MAAO,SAET,CACE0E,KAAM,SACN1E,MAAO,WAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,OACN1E,MAAO,QAET,CACE0E,KAAM,MACN1E,MAAO,SAET,CACE0E,KAAM,SACN1E,MAAO,WAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,QACN1E,MAAO,YAET,CACE0E,KAAM,WACN1E,MAAO,cAET,CACE0E,KAAM,QACN1E,MAAO,WAET,CACE0E,KAAM,SACN1E,MAAO,WAET,CACE0E,KAAM,QACN1E,MAAO,QAET,CACE0E,KAAM,WACN1E,MAAO,gBAET,CACE0E,KAAM,SACN1E,MAAO,cAET,CACE0E,KAAM,QACN1E,MAAO,SAET,CACE0E,KAAM,QACN1E,MAAO,oBAET,CACE0E,KAAM,SACN1E,MAAO,qBAET,CACE0E,KAAM,YACN1E,MAAO,gBAET,CACE0E,KAAM,OACN1E,MAAO,QAET,CACE0E,KAAM,MACN1E,MAAO,SAET,CACE0E,KAAM,QACN1E,MAAO,UAET,CACE0E,KAAM,OACN1E,MAAO,SAET,CACE0E,KAAM,SACN1E,MAAO,aAET,CACE0E,KAAM,SACN1E,MAAO,YAET,CACE0E,KAAM,OACN1E,MAAO,UAET,CACE0E,KAAM,SACN1E,MAAO,YAET,CACE0E,KAAM,MACN1E,MAAO,SAGX2E,oBAAqB,GACrBC,iBAAkB,GAClBC,qBAAsB,KACtBC,wBAAyB,KACzBC,iBAAiB,EACjBC,UAAW,GACXC,2BACE3G,aAAaM,QAAQ,eACkB,SAAvCN,aAAaM,QAAQ,cAGvBsG,cAAc,EACdC,cAAe,KACfC,uBAAuB,EACvBC,YAAa,GACbC,YAAY,EACZC,cAAc,EACdC,oBAAqB,GACrBC,sBAAuB,GACvBC,cAAe,GACfC,wBAAyB,GACzBC,iBAAiB,EACjBC,oBA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ACF,OACgB,eAAdA,EACF,aACgB,gBAAdA,EACF,OACgB,aAAdA,EACF,OACgB,cAAdA,EACF,QACgB,WAAdA,EACF,cACgB,cAAdA,EACF,OACgB,aAAdA,EACF,QACgB,WAAdA,EACF,SACgB,UAAdA,EACF,cACgB,YAAdA,EACF,QACgB,iBAAdA,EACF,QACgB,YAAdA,EACF,YACgB,iBAAdA,EACF,YACgB,YAAdA,EACF,OACgB,iBAAdA,EACF,OACgB,aAAdA,EACF,UAEA,SAGXE,uBAAwB,SAASF,GAC/B,MAAkB,cAAdA,EACK,gBACgB,YAAdA,EACF,iBACgB,YAAdA,EACF,mBACgB,WAAdA,EACF,wBACgB,cAAdA,EACF,mBACgB,UAAdA,EACF,iBACgB,eAAdA,EACF,uBACgB,gBAAdA,EACF,iBACgB,aAAdA,EACF,iBACgB,cAAdA,EACF,kBACgB,WAAdA,EACF,wBACgB,cAAdA,EACF,iBACgB,aAAdA,EACF,kBACgB,WAAdA,EACF,mBACgB,UAAdA,EACF,wBACgB,YAAdA,EACF,kBACgB,iBAAdA,EACF,kBACgB,YAAdA,EACF,sBACgB,iBAAdA,EACF,sBACgB,YAAdA,EACF,iBACgB,iBAAdA,EACF,sBADF,GAITG,eA7TO,SA6TQC,GACb,MAAe,QAAXA,EACK,UACa,SAAXA,EACF,UACa,WAAXA,EACF,UACa,gBAAXA,EACF,UACa,WAAXA,EACF,UACa,SAAXA,EACF,UACa,eAAXA,EACF,UACa,SAAXA,EACF,UACa,SAAXA,EACF,UACa,UAAXA,EACF,UACa,gBAAXA,EACF,UACa,SAAXA,EACF,UACa,WAAXA,EACF,UACa,UAAXA,EACF,UACa,WAAXA,EACF,UACa,gBAAXA,EACF,UACa,UAAXA,EACF,UACa,cAAXA,EACF,UACa,SAAXA,EACF,eADF,GAKTC,2BAvWO,SAuWoBL,GACzB,MAAO,eAGTM,yBA3WO,SA2WkBN,GACvB,SAAA1U,OAAUsL,KAAKqJ,qBAAqBD,GAApC,WAEFO,mBAAoB,SAASC,GAAU,IAAAC,GAAA,EAAAC,GAAA,EAAAC,OAAA1jB,EAAA,IACrC,QA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A,GAAW,yCACX,MACF,IAAK,uBACHA,GAAW,4BACX,MACF,IAAK,iCACHA,GAAW,sCACX,MACF,IAAK,mBACHA,GAAW,eACX,MACF,IAAK,kBACHA,GAAW,gBACX,MACF,IAAK,qBACHA,GAAW,yBACX,MACF,IAAK,cACHA,GAAW,cACX,MACF,IAAK,kBACHA,GAAW,qBACX,MACF,IAAK,iBACHA,GAAW,mBACX,MACF,IAAK,WACHA,GAAW,gBACX,MACF,IAAK,cACHA,GAAW,eACX,MACF,IAAK,mBACHA,GAAW,+BACX,MACF,IAAK,aACHA,GAAW,6BACX,MACF,IAAK,YACHA,GAAW,eACX,MACF,IAAK,iBACHA,GAAW,kCACX,MACF,IAAK,eACHA,GAAW,8BACX,MACF,IAAK,qBACHA,GAAW,6BACX,MACF,IAAK,gBACHA,GAAW,wBACX,MACF,IAAK,wCACHA,GAAW,iDACX,MACF,IAAK,mCACHA,GAAW,kDACX,MACF,IAAK,0BACHA,GAAW,uCACX,MACF,IAAK,mBACHA,GAAW,8BACX,MACF,IAAK,8BACHA,GAAW,uCACX,MACF,IAAK,0BACHA,GAAW,4BACX,MACF,IAAK,gBACHA,GAAW,uCACX,MACF,IAAK,oBACHA,GAAW,2BACX,MACF,IAAK,qBACHA,GAAW,qCACX,MACF,IAAK,wBACHA,GAAW,oCACX,MACF,IAAK,uBACHA,GAAW,0CACX,MACF,IAAK,uBACHA,GAAW,kCACX,MACF,IAAK,sBACHA,GAAW,mCACX,MACF,IAAK,iCACHA,GACE,mEACF,MACF,IAAK,yBACHA,GAAW,8BACX,MACF,IAAK,gBACHA,GAAW,cACX,MACF,IAAK,2BACHA,GAAW,gDACX,MACF,IAAK,mBACHA,GAAW,uCACX,MACF,IAAK,qBACHA,GAAW,kCACX,MACF,IAAK,gBACHA,GAAW,mBACX,MACF,IAAK,gBACHA,GAAW,4BACX,MACF,IAAK,wBACHA,GAAW,sBACX,MAEF,QACEA,GAAW,GAEf,OAAOA,GAET8O,sBAAuB,WACrB,IACIC,EA0BEC,EA3BAC,GAAOC,EAEPC,EAAW,kBAAmBxY,WAAasY,EAC7CE,IACFxY,UAAUyY,cAAcC,SAAS,sBAAsBnc,KAAK,SAAAoc,GAC1DC,YAAY,WACVD,EAAIE,UACH,MAEHF,EAAIhO,iBAAiB,cAAe,WAElCyN,EAAYO,EAAIG,WAEhBV,EAAUzN,iBAAiB,cAAe,WAExC,OAAQyN,EAAUjpB,OAChB,IAAK,YAEC6Q,UAAUyY,cAAcM,YAC1BX,EAAUY,YAAY,CAAE9oB,OAAQ,gBAElC,aAOV8P,UAAUyY,cAAc9N,iBAAiB,mBAAoB,WACvD0N,IACJjX,SAASqQ,cAAc,IAAIC,YAAY,mBACvCxmB,aAAaC,QAAQ,cAAc,IAAImN,MAAOE,WAI9C6f,GAAa,OAInBY,iBAAkB,SAASC,EAAUrpB,GACnC,IAAImmB,EAAU5U,SAASsL,cAAc,KACrCsJ,EAAQmD,aACN,OACA,iCAAmCC,mBAAmBvpB,IAExDmmB,EAAQmD,aAAa,WAAYD,GAEjClD,EAAQrO,MAAM0R,QAAU,OACxBjY,SAASyL,KAAKC,YAAYkJ,GAE1BA,EAAQzM,QAERnI,SAASyL,KAAKE,YAAYiJ,IAI5B5mB,aAAcuB,OAAOC,UAAUkmB,WAAWnV,QAAQ,OAAQ,IAAM,WAChE2X,UAAW3oB,OAAOC,UAAUkmB,WAAWnV,QAAQ,OAAQ,IAAM,IAC7D4X,gBAAiB5oB,OAAOC,UAAU4oB,eAC9B7oB,OAAOC,UAAU4oB,eAAe7X,QAAQ,OAAQ,IAAM,IACtDhR,OAAOC,UAAUkmB,WAAWnV,QAAQ,OAAQ,IAAM,IACtDrS,mBAAoBqB,OAAOC,UAAU4oB,eACjC7oB,OAAOC,UAAU4oB,eAAe7X,QAAQ,OAAQ,IAAM,WACtDhR,OAAOC,UAAUkmB,WAAWnV,QAAQ,OAAQ,IAAM,WAEtDoF,aAAcpW,OAAOC,UAAU6oB,aAAa9X,QAAQ,OAAQ,IAAM,WAClE+X,UAAW/oB,OAAOC,UAAU6oB,aAAa9X,QAAQ,OAAQ,IAAM,IAC/DgY,aAAchpB,OAAOC,UAAUgpB,aAAajY,QAAQ,OAAQ,IAAM,WAClEkY,UAAWlpB,OAAOC,UAAUgpB,aAAajY,QAAQ,OAAQ,IAAM,IAC/D0I,aAAc1Z,OAAOC,UAAUkpB,cAAcnY,QAAQ,OAAQ,IAAM,WACnEoY,UAAWppB,OAAOC,UAAUkpB,cAAcnY,QAAQ,OAAQ,IAAM,IAChEqY,aAAcrpB,OAAOC,UAAUqpB,cAActY,QAAQ,OAAQ,IAAM,WACnEuY,UAAWvpB,OAAOC,UAAUqpB,cAActY,QAAQ,OAAQ,IAAM,IAChEwY,cACExpB,OAAOC,UAAUwpB,qBAAqBzY,QAAQ,OAAQ,IAAM,WAC9D0Y,WAAY1pB,OAAOC,UAAUwpB,qBAAqBzY,QAAQ,OAAQ,IAAM,IAOxE2Y,qBAAsB/D,EAClBA,EAAmB5U,QAAQ,OAAQ,IAAM,iBACzC6U,EAAoB7U,QAAQ,OAAQ,IAAM,WAE9CoU,sDC3XF,IAAAwE,EAAA5sB,EAAA,QAAA6sB,EAAA7sB,EAAA,QAAA8sB,EAAA9sB,EAAA,QAAA+sB,EAAA/sB,EAAAI,EAAA0sB,GAKAzsB,aAAIC,IAAI0sB,OAAa,CACnBC,SAAS,EACTC,WAAY,CACVC,MAAO,WACPC,QAAS,gBAGbC,OAAUC,SAAS,KAAMC,KAGVrwB,EAAA","file":"js/chunk-common.8fac7207.js","sourcesContent":["export default {\r\n setJwtAuthToken: function(token, refreshToken, rememberMe) {\r\n if (rememberMe) {\r\n localStorage.setItem(\"Authorization\", token);\r\n localStorage.setItem(\"RefreshToken\", refreshToken);\r\n } else {\r\n localStorage.removeItem(\"Authorization\");\r\n localStorage.removeItem(\"RefreshToken\");\r\n sessionStorage.setItem(\"Authorization\", token);\r\n sessionStorage.setItem(\"RefreshToken\", refreshToken);\r\n }\r\n },\r\n clearJwtAuthToken: function() {\r\n localStorage.removeItem(\"Authorization\");\r\n localStorage.removeItem(\"RefreshToken\");\r\n sessionStorage.removeItem(\"Authorization\");\r\n sessionStorage.removeItem(\"RefreshToken\");\r\n },\r\n getJwtAuthToken: function() {\r\n if (localStorage.getItem(\"Authorization\"))\r\n return localStorage.getItem(\"Authorization\");\r\n else return sessionStorage.getItem(\"Authorization\");\r\n },\r\n getRefreshToken: function() {\r\n if (localStorage.getItem(\"RefreshToken\"))\r\n return localStorage.getItem(\"RefreshToken\");\r\n else return sessionStorage.getItem(\"RefreshToken\");\r\n },\r\n setReadAnnouncement: id => {\r\n let ReadAnnouncements = localStorage.getItem(\"ReadAnnouncements\");\r\n if (ReadAnnouncements) {\r\n let items = JSON.parse(ReadAnnouncements);\r\n if (!items.includes(id)) {\r\n items.push(id);\r\n localStorage.setItem(\"ReadAnnouncements\", JSON.stringify(items));\r\n }\r\n } else {\r\n let items = [id];\r\n localStorage.setItem(\"ReadAnnouncements\", JSON.stringify(items));\r\n }\r\n },\r\n updateReadAnnouncement: ids => {\r\n if (!ids) {\r\n localStorage.removeItem(\"ReadAnnouncements\");\r\n return;\r\n }\r\n let ReadAnnouncements = localStorage.getItem(\"ReadAnnouncements\");\r\n if (ReadAnnouncements) {\r\n let items = JSON.parse(ReadAnnouncements);\r\n for (let item of items) {\r\n if (!ids.includes(item)) {\r\n items = items.filter(f => f !== item);\r\n }\r\n }\r\n // for (let id of ids) {\r\n // if (!items.includes(id)) {\r\n // items = items.filter(item => item !== id);\r\n // }\r\n // }\r\n localStorage.setItem(\"ReadAnnouncements\", JSON.stringify(items));\r\n }\r\n },\r\n resetReadAnnouncement: () => {\r\n localStorage.removeItem(\"ReadAnnouncements\");\r\n },\r\n isReadAnnouncement: id => {\r\n let ReadAnnouncements = localStorage.getItem(\"ReadAnnouncements\");\r\n if (ReadAnnouncements) {\r\n let items = JSON.parse(ReadAnnouncements);\r\n if (items.includes(id)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n return false;\r\n },\r\n // getRememberMe: function() {\r\n // return localStorage.getItem(\"RememberMe\");\r\n // },\r\n // setRememberMe: function(_value) {\r\n // return localStorage.setItem(\"RememberMe\", _value);\r\n // },\r\n getLastActivityDate() {\r\n return localStorage.getItem(\"LastActivityDate\");\r\n },\r\n setLastActivityDate: function(_value) {\r\n return localStorage.setItem(\"LastActivityDate\", _value);\r\n }\r\n};\r\n","import \"@mdi/font/css/materialdesignicons.css\";\r\nimport Vue from \"vue\";\r\nimport Vuetify from \"vuetify\";\r\nimport \"vuetify/dist/vuetify.min.css\";\r\n\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n rtl: true,\r\n theme: {\r\n themes: {\r\n light: {\r\n primary: \"#0096ff\",\r\n secondary: \"#424242\",\r\n accent: \"#d21954\",\r\n error: \"#FF5252\",\r\n info: \"#2196F3\",\r\n success: \"#4CAF50\",\r\n warning: \"#FFC107\"\r\n }\r\n }\r\n },\r\n icons: {\r\n iconfont: \"fa\"\r\n }\r\n});\r\n","import Vue from \"vue\";\r\nimport Vuex from \"vuex\";\r\nimport api from \"@/services/backend-api\";\r\nimport helpers from \"../services/helpers\";\r\n\r\nVue.use(Vuex);\r\n\r\nconst store = new Vuex.Store({\r\n state: {\r\n ecApiBaseUrl: helpers.ecApiBaseUrl,\r\n ecApiMonitorServer: helpers.ecApiMonitorServer,\r\n cartItems: [],\r\n clientCredit: {},\r\n clientContract: {},\r\n accountInfo: {},\r\n toast: {\r\n isOpen: false,\r\n text: \"\",\r\n mode: \"info\"\r\n },\r\n storePurchaseRequiredAlert: {\r\n isOpen: false,\r\n error: \"\"\r\n },\r\n confirm: {\r\n isOpen: false,\r\n title: \"\",\r\n text: \"\",\r\n action: function() {}\r\n },\r\n loading: false,\r\n lazyLoading: false,\r\n clientId: \"\",\r\n userId: \"\",\r\n deletePrevntedAlert: false,\r\n deletePrevntedItem: {},\r\n notReadSupportTicketsCount: 0,\r\n appMode: window.appConfig.mode,\r\n fileUploaderOpen: false,\r\n fileUploadedAction: null,\r\n fileUploaderKey: 0,\r\n fileUploaderSpecialMode: \"\",\r\n userRoles: [],\r\n displayCategorys: [],\r\n agentManifest: {},\r\n variables: [],\r\n cities: [\r\n {\r\n name: \"تهران\",\r\n value: \"tehran\"\r\n },\r\n {\r\n name: \"مشهد\",\r\n value: \"mashhad\"\r\n },\r\n {\r\n name: \"تبریز\",\r\n value: \"tabriz\"\r\n },\r\n {\r\n name: \"قم\",\r\n value: \"qom\"\r\n },\r\n {\r\n name: \"اصفهان\",\r\n value: \"esfahan\"\r\n },\r\n {\r\n name: \"شیراز\",\r\n value: \"shiraz\"\r\n },\r\n {\r\n name: \"یزد\",\r\n value: \"yazd\"\r\n },\r\n {\r\n name: \"ارومیه\",\r\n value: \"orumiyeh\"\r\n },\r\n {\r\n name: \"کرمان\",\r\n value: \"kerman\"\r\n },\r\n {\r\n name: \"اهواز\",\r\n value: \"ahvaz\"\r\n },\r\n {\r\n name: \"بجنورد\",\r\n value: \"bojnurd\"\r\n },\r\n {\r\n name: \"گرگان\",\r\n value: \"gorgan\"\r\n },\r\n {\r\n name: \"ساری\",\r\n value: \"sari\"\r\n },\r\n {\r\n name: \"رشت\",\r\n value: \"rasht\"\r\n },\r\n {\r\n name: \"اردبیل\",\r\n value: \"ardabil\"\r\n },\r\n {\r\n name: \"سمنان\",\r\n value: \"semnan\"\r\n },\r\n {\r\n name: \"قزوین\",\r\n value: \"gazvin\"\r\n },\r\n {\r\n name: \"زنجان\",\r\n value: \"zenjan\"\r\n },\r\n {\r\n name: \"سنندج\",\r\n value: \"sanandaj\"\r\n },\r\n {\r\n name: \"کرمانشاه\",\r\n value: \"kermanshah\"\r\n },\r\n {\r\n name: \"همدان\",\r\n value: \"hamadan\"\r\n },\r\n {\r\n name: \"بیرجند\",\r\n value: \"birjand\"\r\n },\r\n {\r\n name: \"ایلام\",\r\n value: \"ilam\"\r\n },\r\n {\r\n name: \"خرم آباد\",\r\n value: \"khur-ramabad\"\r\n },\r\n {\r\n name: \"شهرکرد\",\r\n value: \"shahr-kord\"\r\n },\r\n {\r\n name: \"یاسوج\",\r\n value: \"yasuj\"\r\n },\r\n {\r\n name: \"بوشهر\",\r\n value: \"bandar-e-bushehr\"\r\n },\r\n {\r\n name: \"زاهدان\",\r\n value: \"qal-eh-ye-zahedan\"\r\n },\r\n {\r\n name: \"بندر عباس\",\r\n value: \"bandar-abbas\"\r\n },\r\n {\r\n name: \"اراک\",\r\n value: \"arak\"\r\n },\r\n {\r\n name: \"کرج\",\r\n value: \"karaj\"\r\n },\r\n {\r\n name: \"دزفول\",\r\n value: \"dezful\"\r\n },\r\n {\r\n name: \"ساوه\",\r\n value: \"saveh\"\r\n },\r\n {\r\n name: \"شاهرود\",\r\n value: \"emamshahr\"\r\n },\r\n {\r\n name: \"بروجرد\",\r\n value: \"borujerd\"\r\n },\r\n {\r\n name: \"مرند\",\r\n value: \"marand\"\r\n },\r\n {\r\n name: \"سبزوار\",\r\n value: \"sabzevar\"\r\n },\r\n {\r\n name: \"کیش\",\r\n value: \"kish\"\r\n }\r\n ],\r\n focusedInfoItemName: \"\",\r\n layoutGoBackPath: \"\",\r\n monitoringConnection: null,\r\n monitoringRtcConnection: null,\r\n rtcChannelState: false,\r\n iceServer: \"\",\r\n isInactivityTimeoutEnable:\r\n localStorage.getItem(\"RememberMe\") &&\r\n localStorage.getItem(\"RememberMe\") === \"true\"\r\n ? false\r\n : true,\r\n signageMuted: false,\r\n copyForLayout: null,\r\n elphyQueueServerError: false,\r\n posResponse: \"\",\r\n pwaUpdated: false,\r\n adhanPlaying: false,\r\n currentSessionCache: [],\r\n inQueueReportApiPosts: [],\r\n previewApiKey: \"\",\r\n previewApiKeyExpiration: \"\",\r\n refreshingToken: false,\r\n tokenLikelyExpired: false,\r\n captchaAutorized: false,\r\n infoitemRedirectPayloads: [],\r\n isQmsLocal: false,\r\n qmsBranchDepartmentId: \"\",\r\n qmsBrancId: \"\"\r\n },\r\n mutations: {\r\n openFileUploader(state) {\r\n let before = state.fileUploaderOpen;\r\n state.fileUploaderOpen = true;\r\n if (!before) state.fileUploaderKey += 1;\r\n },\r\n setFileUploadedAction(state, _action) {\r\n state.fileUploadedAction = _action;\r\n },\r\n setFileUploaderSpecialMode(state, _value) {\r\n state.fileUploaderSpecialMode = _value;\r\n },\r\n closeFileUploader(state) {\r\n state.fileUploaderOpen = false;\r\n },\r\n addCartItem(state, _cartItem) {\r\n state.cartItems.push(_cartItem);\r\n },\r\n removeCartItem(state, _id) {\r\n let index = state.cartItems.findIndex(item => item.id === _id);\r\n if (index !== -1) state.cartItems.splice(index, 1);\r\n },\r\n plusCartItem(state, _id) {\r\n let index = state.cartItems.findIndex(item => item.id === _id);\r\n if (index !== -1) state.cartItems[index].count += 1;\r\n },\r\n minusCartItem(state, _id) {\r\n let index = state.cartItems.findIndex(item => item.id === _id);\r\n if (index !== -1) state.cartItems[index].count -= 1;\r\n },\r\n emptyCart(state) {\r\n state.cartItems = [];\r\n },\r\n setClientCredit(state, _clientCredit) {\r\n state.clientCredit = _clientCredit;\r\n },\r\n setClientContract(state, _clientContract) {\r\n state.clientContract = _clientContract;\r\n },\r\n setNotReadSupportTicketsCount(state, _count) {\r\n state.notReadSupportTicketsCount = _count;\r\n },\r\n setAccountInfo(state, _accountInfo) {\r\n state.accountInfo = _accountInfo;\r\n },\r\n setToast(state, _conifg) {\r\n state.toast.isOpen = true;\r\n state.toast.text = _conifg.text;\r\n state.toast.mode = _conifg.mode;\r\n state.toast.close = _conifg.close;\r\n state.toast.timer = _conifg.timer;\r\n },\r\n closeToast(state) {\r\n state.toast.isOpen = false;\r\n state.toast.text = \"\";\r\n },\r\n setStorePurchaseRequiredAlert(state, _conifg) {\r\n state.storePurchaseRequiredAlert.isOpen = true;\r\n state.storePurchaseRequiredAlert.error = _conifg.error;\r\n state.storePurchaseRequiredAlert = {\r\n ...state.storePurchaseRequiredAlert\r\n };\r\n },\r\n closeStorePurchaseRequiredAlert(state) {\r\n state.storePurchaseRequiredAlert.isOpen = false;\r\n state.storePurchaseRequiredAlert.error = \"\";\r\n },\r\n setConfirm(state, _conifg) {\r\n state.confirm.isOpen = true;\r\n state.confirm.text = _conifg.text;\r\n state.confirm.title = _conifg.title;\r\n state.confirm.action = _conifg.action;\r\n },\r\n closeConfirm(state) {\r\n state.confirm.isOpen = false;\r\n state.confirm.text = \"\";\r\n state.confirm.title = \"\";\r\n state.confirm.action = function() {};\r\n },\r\n loadingStarted(state) {\r\n state.loading = true;\r\n },\r\n loadingEnded(state) {\r\n state.loading = false;\r\n },\r\n lazyLoadingStarted(state) {\r\n state.lazyLoading = true;\r\n },\r\n lazyLoadingEnded(state) {\r\n state.lazyLoading = false;\r\n },\r\n setClientId(state, _clientId) {\r\n state.clientId = _clientId;\r\n },\r\n setUserId(state, _userId) {\r\n state.userId = _userId;\r\n },\r\n showDeletePrevntedAlert(state) {\r\n state.deletePrevntedAlert = true;\r\n },\r\n hideDeletePrevntedAlert(state) {\r\n state.deletePrevntedAlert = false;\r\n },\r\n setDeletePrevntedItem(state, _item) {\r\n state.deletePrevntedItem = _item;\r\n },\r\n setUserRoles(state, _roles) {\r\n state.userRoles = _roles;\r\n },\r\n setDisplayCategorys(state, _cats) {\r\n state.displayCategorys = _cats;\r\n },\r\n setAgentManifest(state, _manifest) {\r\n state.agentManifest = _manifest;\r\n },\r\n setVariables(state, _variables) {\r\n state.variables = _variables;\r\n },\r\n setFocusedInfoItemName(state, _name) {\r\n state.focusedInfoItemName = _name;\r\n },\r\n setLayoutGoBackPath(state, _path) {\r\n state.layoutGoBackPath = _path;\r\n },\r\n setMonitoringConnection(state, _connection) {\r\n state.monitoringConnection = _connection;\r\n },\r\n setMonitoringRtcConnection(state, _connection) {\r\n state.monitoringRtcConnection = _connection;\r\n },\r\n setRtcChannelState(state, _state) {\r\n state.rtcChannelState = _state;\r\n },\r\n setIceServer(state, _iceServer) {\r\n state.iceServer = _iceServer;\r\n },\r\n setIsInactivityTimeoutEnable(state, _value) {\r\n if (_value) localStorage.setItem(\"RememberMe\", \"false\");\r\n else localStorage.setItem(\"RememberMe\", \"true\");\r\n state.isInactivityTimeoutEnable = _value;\r\n },\r\n setSignageMuted(state, _value) {\r\n state.signageMuted = _value;\r\n },\r\n setCopyForLayout(state, _value) {\r\n state.copyForLayout = _value;\r\n },\r\n setElphyQueueServerError(state, _value) {\r\n state.elphyQueueServerError = _value;\r\n },\r\n setPosResponse(state, _value) {\r\n state.posResponse = _value;\r\n },\r\n setPwaUpdated(state) {\r\n state.pwaUpdated = true;\r\n },\r\n setAdhanPlaying(state, _value) {\r\n state.adhanPlaying = _value;\r\n },\r\n submitCurrentSessionCache(state, _value) {\r\n state.currentSessionCache = state.currentSessionCache.filter(\r\n f =>\r\n f.infoItemId !== _value.infoItemId ||\r\n f.identifier !== _value.identifier\r\n );\r\n state.currentSessionCache.push(_value);\r\n },\r\n removeCurrentSessionCache(state) {\r\n state.currentSessionCache = [];\r\n // state.currentSessionCache = state.currentSessionCache.filter(\r\n // f =>\r\n // f.infoItemId !== _value.infoItemId ||\r\n // f.identifier !== _value.identifier\r\n // );\r\n },\r\n InitInQueueReportApiPosts(state) {\r\n if (localStorage.getItem(\"InQueueReportApiPosts\")) {\r\n let posts = JSON.parse(localStorage.getItem(\"InQueueReportApiPosts\"));\r\n if (posts && posts.length >= 999) {\r\n localStorage.removeItem(\"InQueueReportApiPosts\");\r\n return;\r\n }\r\n if (posts && posts.length) {\r\n state.inQueueReportApiPosts = posts;\r\n }\r\n }\r\n },\r\n addToInQueueReportApiPosts(state, _post) {\r\n state.inQueueReportApiPosts.push(_post);\r\n if (state.inQueueReportApiPosts.length < 1000) {\r\n localStorage.setItem(\r\n \"InQueueReportApiPosts\",\r\n JSON.stringify(state.inQueueReportApiPosts)\r\n );\r\n }\r\n },\r\n updateInQueueReportApiPosts(state) {\r\n state.inQueueReportApiPosts = state.inQueueReportApiPosts.filter(\r\n f => f.status !== \"success\" && f.status !== \"canceled\"\r\n );\r\n if (state.inQueueReportApiPosts.length < 1000) {\r\n localStorage.setItem(\r\n \"InQueueReportApiPosts\",\r\n JSON.stringify(state.inQueueReportApiPosts)\r\n );\r\n }\r\n },\r\n setPreviewApiKey(state, _value) {\r\n state.previewApiKey = _value;\r\n state.previewApiKeyExpiration = new Date(\r\n new Date().getTime() + 5 * 60 * 1000\r\n ).valueOf();\r\n },\r\n setRefreshingToken(state, _value) {\r\n state.refreshingToken = _value;\r\n },\r\n setTokenLikelyExpired(state, _value) {\r\n state.tokenLikelyExpired = _value;\r\n },\r\n setCaptchaAutorized(state, _value) {\r\n state.captchaAutorized = _value;\r\n },\r\n addInfoitemRedirectPayloads(state, _value) {\r\n state.infoitemRedirectPayloads = state.infoitemRedirectPayloads.filter(\r\n f => f.id !== _value.id\r\n );\r\n if (state.infoitemRedirectPayloads.find(f => f.id === _value.id)) return;\r\n state.infoitemRedirectPayloads.push(_value);\r\n },\r\n removeInfoitemRedirectPayloads(state, _value) {\r\n state.infoitemRedirectPayloads = state.infoitemRedirectPayloads.filter(\r\n f => f.id !== _value.id\r\n );\r\n },\r\n setIsQmsLocal(state, _value) {\r\n state.isQmsLocal = _value;\r\n },\r\n setQmsBranchDepartmentId(state, _value) {\r\n state.qmsBranchDepartmentId = _value;\r\n },\r\n setQmsBranchId(state, _value) {\r\n state.qmsBrancId = _value;\r\n }\r\n },\r\n getters: {\r\n hasActiveContract: state => {\r\n if (state.clientContract && state.clientContract.isActive) {\r\n return true;\r\n }\r\n return false;\r\n },\r\n cartItemsCount: state => {\r\n return state.cartItems.length;\r\n },\r\n cartItemsTotalPrice: state => {\r\n return {\r\n totalPrice: state.cartItems\r\n .map(item => item.stockItem.price * item.count)\r\n .reduce((a, b) => a + b, 0),\r\n totalDiscount: state.cartItems\r\n .map(\r\n item =>\r\n item.stockItem.price *\r\n (item.stockItem.discount / 100) *\r\n item.count\r\n )\r\n .reduce((a, b) => a + b, 0),\r\n totalSubscription: state.cartItems\r\n .map(item => item.stockItem.monthlyFee * item.count)\r\n .reduce((a, b) => a + b, 0),\r\n totalPayment: state.cartItems\r\n .map(\r\n item =>\r\n item.stockItem.price *\r\n (1 - item.stockItem.discount / 100) *\r\n item.count\r\n )\r\n .reduce((a, b) => a + b, 0)\r\n };\r\n },\r\n cartItemPrice: state => _id => {\r\n let index = state.cartItems.findIndex(item => item.id === _id);\r\n if (index === -1) return {};\r\n let totalPrice =\r\n state.cartItems[index].stockItem.price * state.cartItems[index].count;\r\n\r\n let totalDiscount =\r\n state.cartItems[index].stockItem.price *\r\n (state.cartItems[index].stockItem.discount / 100) *\r\n state.cartItems[index].count;\r\n\r\n let totalSubscription =\r\n state.cartItems[index].stockItem.monthlyFee *\r\n state.cartItems[index].count;\r\n\r\n let totalPayment =\r\n state.cartItems[index].stockItem.price *\r\n (1 - state.cartItems[index].stockItem.discount / 100) *\r\n state.cartItems[index].count;\r\n return {\r\n totalPrice: totalPrice,\r\n totalDiscount: totalDiscount,\r\n totalSubscription: totalSubscription,\r\n totalPayment: totalPayment\r\n };\r\n },\r\n cartHasShipping: state => {\r\n return (\r\n state.cartItems.filter(item => item.stockItem.type == \"Product\")\r\n .length > 0\r\n );\r\n },\r\n accountInfoAlertsCount: state => {\r\n let count = 0;\r\n if (!state.accountInfo.emailConfirmed) count += 1;\r\n if (!state.accountInfo.phoneNumberConfirmed) count += 1;\r\n return count;\r\n },\r\n displayCategorysNames: state => {\r\n return state.displayCategorys.map(f => f.name);\r\n },\r\n variable: state => (_name, _user) => {\r\n if (!_name) return \"\";\r\n if (!_name.startsWith(\"@@\")) _name = `@@${_name}@@`;\r\n\r\n var value = \"\";\r\n\r\n if (_name === \"@@el_pdate1@@\") {\r\n value = new Intl.DateTimeFormat(\"fa-IR-u-ca-persian\", {\r\n day: \"2-digit\",\r\n month: \"2-digit\",\r\n year: \"numeric\",\r\n numberingSystem: \"latn\"\r\n }).format(Date.now());\r\n return value;\r\n } else if (_name === \"@@el_pdate2@@\") {\r\n value = new Intl.DateTimeFormat(\"fa-IR-u-ca-persian\", {\r\n day: \"numeric\",\r\n month: \"long\",\r\n year: \"numeric\"\r\n }).format(Date.now());\r\n return value;\r\n } else if (_name === \"@@el_pdate3@@\") {\r\n value = new Intl.DateTimeFormat(\"fa-IR-u-ca-persian\", {\r\n day: \"numeric\",\r\n month: \"numeric\",\r\n year: \"numeric\"\r\n }).format(Date.now());\r\n return value;\r\n }\r\n\r\n if (!state.variables.length) return \"\";\r\n value =\r\n (state.variables.filter(v => v.name === _name)[0] &&\r\n state.variables.filter(v => v.name === _name)[0].value) ||\r\n \"\";\r\n\r\n if (_name === \"@@el_city@@\" && _user != \"weatherapi\") {\r\n value =\r\n (state.cities.filter(v => v.value === value)[0] &&\r\n state.cities.filter(v => v.value === value)[0].name) ||\r\n \"\";\r\n }\r\n return value;\r\n },\r\n currentSessionCacheById: state => _value => {\r\n return state.currentSessionCache.filter(\r\n f =>\r\n f.infoItemId === _value.infoItemId &&\r\n f.identifier === _value.identifier\r\n );\r\n }\r\n },\r\n actions: {\r\n relayCommand({ dispatch }, _payload) {\r\n return new Promise((resolve, reject) => {\r\n let _apiKey = _payload.apiKey;\r\n let _command = _payload.command;\r\n let _displayCategoryId = _payload.displayCategoryId;\r\n if (\r\n _command === \"scheduleupdated\" ||\r\n _command.startsWith(\"layoutupdated\")\r\n ) {\r\n if (!window.appConfig.flashLayoutUpdate) {\r\n resolve();\r\n }\r\n dispatch(\"getPreviewApiKey\").then(response => {\r\n api.ecapi\r\n .get(\"/Displays/SendCommand/\", {\r\n params: {\r\n apiKey: _apiKey ? _apiKey : \"\",\r\n command: `${_command}#${response}`,\r\n categoryId: _apiKey ? null : _displayCategoryId\r\n }\r\n })\r\n .then(response => {\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n } else {\r\n api.ecapi\r\n .get(\"/Displays/SendCommand/\", {\r\n params: {\r\n apiKey: _apiKey ? _apiKey : \"\",\r\n command: `${_command}`,\r\n categoryId: _apiKey ? null : _displayCategoryId\r\n }\r\n })\r\n .then(response => {\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n }\r\n });\r\n },\r\n getPreviewApiKey({ commit, state }) {\r\n return new Promise((resolve, reject) => {\r\n if (state.previewApiKey && Date.now() < state.previewApiKeyExpiration) {\r\n return resolve(state.previewApiKey);\r\n }\r\n api.ecapi\r\n .get(`/Layout/PreviewApiKey`)\r\n .then(response => {\r\n commit(\"setPreviewApiKey\", response.data);\r\n resolve(response.data);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateClientCredit({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(`/Client/Credit/`)\r\n .then(response => {\r\n resolve(response);\r\n commit(\"setClientCredit\", response.data.clientCredit);\r\n commit(\"setClientContract\", response.data.clientContract);\r\n })\r\n .catch(error => {\r\n helpers.logOut();\r\n reject(error);\r\n });\r\n });\r\n },\r\n signOut() {\r\n api.ecapi.post(`/Account/SignOut/`).finally(() => {\r\n helpers.logOut();\r\n });\r\n },\r\n refreshAccessToken({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n commit(\"setRefreshingToken\", true);\r\n api.ecapi\r\n .post(`/Account/Refresh/`, {\r\n token:\r\n localStorage.getItem(\"Authorization\") ||\r\n sessionStorage.getItem(\"Authorization\"),\r\n refreshToken:\r\n localStorage.getItem(\"RefreshToken\") ||\r\n sessionStorage.getItem(\"RefreshToken\")\r\n })\r\n .then(response => {\r\n if (localStorage.getItem(\"Authorization\")) {\r\n localStorage.setItem(\"Authorization\", response.data.token);\r\n localStorage.setItem(\"RefreshToken\", response.data.refreshToken);\r\n }\r\n if (sessionStorage.getItem(\"Authorization\")) {\r\n sessionStorage.setItem(\"Authorization\", response.data.token);\r\n sessionStorage.setItem(\r\n \"RefreshToken\",\r\n response.data.refreshToken\r\n );\r\n }\r\n commit(\"setTokenLikelyExpired\", false);\r\n if (response.data.validTime) {\r\n let time = 5;\r\n if (response.data.validTime >= 20) {\r\n time = response.data.validTime - 7;\r\n }\r\n\r\n setTimeout(() => {\r\n commit(\"setTokenLikelyExpired\", true);\r\n }, time * 1000);\r\n }\r\n resolve(response.data.token);\r\n })\r\n .catch(error => {\r\n helpers.logOut();\r\n reject(error);\r\n })\r\n .finally(() => {\r\n commit(\"setRefreshingToken\", false);\r\n });\r\n });\r\n },\r\n tokenTimeoutDispatch({ commit }, _payload) {\r\n setTimeout(() => {\r\n commit(\"setTokenLikelyExpired\", true);\r\n }, _payload.time * 1000);\r\n },\r\n updateNotReadSupportTicketsCount({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(`/Support/Tickets/NotReadCount/`)\r\n .then(response => {\r\n resolve(response);\r\n commit(\"setNotReadSupportTicketsCount\", response.data);\r\n })\r\n .catch(error => {\r\n helpers.logOut();\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateAccountInfo({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(`/Account/User/`)\r\n .then(response => {\r\n resolve(response);\r\n commit(\"setAccountInfo\", response.data);\r\n })\r\n .catch(error => {\r\n helpers.logOut();\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateCart({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(`/Store/Cart/`)\r\n .then(response => {\r\n resolve(response);\r\n commit(\"emptyCart\");\r\n response.data.forEach(item => {\r\n commit(\"addCartItem\", item);\r\n });\r\n //commit(\"addCartItem\", _cartItem);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n submitAddCartItem({ dispatch }, _cartItem) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .post(\r\n `/Store/Cart/Add/${_cartItem.storeItemId}/${_cartItem.stockItemId}`,\r\n _cartItem,\r\n {\r\n params: {\r\n count: _cartItem.count || 1\r\n }\r\n }\r\n )\r\n .then(response => {\r\n resolve(response);\r\n dispatch(\"updateCart\");\r\n //commit(\"addCartItem\", _cartItem);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n submitRemoveCartItem({ dispatch }, _id) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .delete(`/Store/Cart/Remove/${_id}`)\r\n .then(response => {\r\n resolve(response);\r\n dispatch(\"updateCart\"); //commit(\"removeCartItem\", _id);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n submitPlusCartItem({ dispatch }, _id) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .patch(`/Store/Cart/Plus/${_id}`)\r\n .then(response => {\r\n resolve(response);\r\n dispatch(\"updateCart\"); //commit(\"plusCartItem\", _id);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n submitMinusCartItem({ dispatch }, _id) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .patch(`/Store/Cart/Minus/${_id}`, _id)\r\n .then(response => {\r\n resolve(response);\r\n dispatch(\"updateCart\"); //commit(\"minusCartItem\", _id);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateDisplayCategorys({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(\"/DisplayCategorys/\")\r\n .then(response => {\r\n commit(\"setDisplayCategorys\", response.data);\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n },\r\n updateAgentManifest({ commit }) {\r\n return new Promise((resolve, reject) => {\r\n api.ecapi\r\n .get(\"/App/Agent\")\r\n .then(response => {\r\n commit(\"setAgentManifest\", response.data);\r\n resolve(response);\r\n })\r\n .catch(error => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n }\r\n});\r\n\r\nexport default store;\r\n","module.exports = __webpack_public_path__ + \"img/logo_b_sm.88f1e914.png\";","let getReport, definePropertySupported;\r\n\r\ngetReport = function(userAgent) {\r\n // eslint-disable-next-line\r\n var report, match, uuid;\r\n\r\n userAgent = userAgent || navigator.userAgent;\r\n\r\n // initialize object to store results\r\n report = {\r\n browser: {\r\n name: null,\r\n version: null\r\n },\r\n cookies: null,\r\n flash: {\r\n version: null\r\n },\r\n ip: null,\r\n java: {\r\n version: null\r\n },\r\n os: {\r\n name: null,\r\n version: null\r\n },\r\n screen: {\r\n colors: null,\r\n dppx: null,\r\n height: null,\r\n width: null\r\n },\r\n scripts: true,\r\n userAgent: userAgent,\r\n viewport: {\r\n height: null,\r\n layout: {\r\n height: null,\r\n width: null\r\n },\r\n width: null,\r\n zoom: null\r\n },\r\n websockets: null\r\n };\r\n\r\n // extract browser name from user agent\r\n if (userAgent.indexOf(\"Trident\") >= 0 || userAgent.indexOf(\"MSIE\") >= 0) {\r\n if (userAgent.indexOf(\"Mobile\") >= 0) {\r\n report.browser.name = \"IE Mobile\";\r\n } else {\r\n report.browser.name = \"Internet Explorer\";\r\n }\r\n }\r\n\r\n if (\r\n userAgent.indexOf(\"Firefox\") >= 0 &&\r\n userAgent.indexOf(\"Seamonkey\") === -1\r\n ) {\r\n if (userAgent.indexOf(\"Android\") >= 0) {\r\n report.browser.name = \"Firefox for Android\";\r\n } else {\r\n report.browser.name = \"Firefox\";\r\n }\r\n }\r\n\r\n if (\r\n userAgent.indexOf(\"Safari\") >= 0 &&\r\n userAgent.indexOf(\"Chrome\") === -1 &&\r\n userAgent.indexOf(\"Chromium\") === -1 &&\r\n userAgent.indexOf(\"Android\") === -1\r\n ) {\r\n if (userAgent.indexOf(\"CriOS\") >= 0) {\r\n report.browser.name = \"Chrome for iOS\";\r\n } else if (userAgent.indexOf(\"FxiOS\") >= 0) {\r\n report.browser.name = \"Firefox for iOS\";\r\n } else {\r\n report.browser.name = \"Safari\";\r\n }\r\n }\r\n\r\n if (userAgent.indexOf(\"Chrome\") >= 0) {\r\n if (userAgent.match(/\\bChrome\\/[.0-9]* Mobile\\b/)) {\r\n if (\r\n userAgent.match(/\\bVersion\\/\\d+\\.\\d+\\b/) ||\r\n userAgent.match(/\\bwv\\b/)\r\n ) {\r\n report.browser.name = \"WebView on Android\";\r\n } else {\r\n report.browser.name = \"Chrome for Android\";\r\n }\r\n } else {\r\n report.browser.name = \"Chrome\";\r\n }\r\n }\r\n\r\n if (\r\n userAgent.indexOf(\"Android\") >= 0 &&\r\n userAgent.indexOf(\"Chrome\") === -1 &&\r\n userAgent.indexOf(\"Chromium\") === -1 &&\r\n userAgent.indexOf(\"Trident\") === -1 &&\r\n userAgent.indexOf(\"Firefox\") === -1\r\n ) {\r\n report.browser.name = \"Android Browser\";\r\n }\r\n\r\n if (userAgent.indexOf(\"Edge\") >= 0) {\r\n report.browser.name = \"Edge\";\r\n }\r\n\r\n if (userAgent.indexOf(\"Edg\") >= 0) {\r\n report.browser.name = \"Edge\";\r\n }\r\n\r\n if (userAgent.indexOf(\"UCBrowser\") >= 0) {\r\n report.browser.name = \"UC Browser for Android\";\r\n }\r\n\r\n if (userAgent.indexOf(\"SamsungBrowser\") >= 0) {\r\n report.browser.name = \"Samsung Internet\";\r\n }\r\n\r\n if (userAgent.indexOf(\"OPR\") >= 0 || userAgent.indexOf(\"Opera\") >= 0) {\r\n if (userAgent.indexOf(\"Opera Mini\") >= 0) {\r\n report.browser.name = \"Opera Mini\";\r\n } else if (\r\n userAgent.indexOf(\"Opera Mobi\") >= 0 ||\r\n userAgent.indexOf(\"Opera Tablet\") >= 0 ||\r\n userAgent.indexOf(\"Mobile\") >= 0\r\n ) {\r\n report.browser.name = \"Opera Mobile\";\r\n } else {\r\n report.browser.name = \"Opera\";\r\n }\r\n }\r\n\r\n if (\r\n userAgent.indexOf(\"BB10\") >= 0 ||\r\n userAgent.indexOf(\"PlayBook\") >= 0 ||\r\n userAgent.indexOf(\"BlackBerry\") >= 0\r\n ) {\r\n report.browser.name = \"BlackBerry\";\r\n }\r\n\r\n if (userAgent.indexOf(\"MQQBrowser\") >= 0) {\r\n report.browser.name = \"QQ Browser\";\r\n }\r\n\r\n // extract browser version number from user agent\r\n match = null;\r\n\r\n switch (report.browser.name) {\r\n case \"Chrome\":\r\n case \"Chrome for Android\":\r\n case \"WebView on Android\":\r\n match = userAgent.match(/Chrome\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Firefox\":\r\n case \"Firefox for Android\":\r\n match = userAgent.match(/Firefox\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Firefox for iOS\":\r\n match = userAgent.match(/FxiOS\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Edge\":\r\n case \"Internet Explorer\":\r\n case \"IE Mobile\":\r\n if (userAgent.indexOf(\"Edge\") >= 0) {\r\n match = userAgent.match(/Edge\\/((\\d+\\.)+\\d+)/);\r\n } else if (userAgent.indexOf(\"rv:11\") >= 0) {\r\n match = userAgent.match(/rv:((\\d+\\.)+\\d+)/);\r\n } else if (userAgent.indexOf(\"MSIE\") >= 0) {\r\n match = userAgent.match(/MSIE ((\\d+\\.)+\\d+)/);\r\n } else if (userAgent.indexOf(\"Edg\") >= 0) {\r\n match = userAgent.match(/Edg\\/((\\d+\\.)+\\d+)/);\r\n }\r\n\r\n break;\r\n case \"Safari\":\r\n match = userAgent.match(/Version\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Android Browser\":\r\n match = userAgent.match(/Android ((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"UC Browser for Android\":\r\n match = userAgent.match(/UCBrowser\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Samsung Internet\":\r\n match = userAgent.match(/SamsungBrowser\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Opera Mini\":\r\n match = userAgent.match(/Opera Mini\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Opera\":\r\n if (userAgent.match(/OPR/)) {\r\n match = userAgent.match(/OPR\\/((\\d+\\.)+\\d+)/);\r\n } else if (userAgent.match(/Version/)) {\r\n match = userAgent.match(/Version\\/((\\d+\\.)+\\d+)/);\r\n } else {\r\n match = userAgent.match(/Opera\\/((\\d+\\.)+\\d+)/);\r\n }\r\n break;\r\n case \"BlackBerry\":\r\n match = userAgent.match(/Version\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"QQ Browser\":\r\n match = userAgent.match(/MQQBrowser\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n default:\r\n match = userAgent.match(/\\/((\\d+\\.)+\\d+)$/);\r\n break;\r\n }\r\n\r\n if (match && match[1]) {\r\n report.browser.version = match[1];\r\n }\r\n\r\n // pull in browser window size from the visual viewport\r\n report.viewport.width =\r\n window.innerWidth || document.documentElement.clientWidth;\r\n report.viewport.height =\r\n window.innerHeight || document.documentElement.clientHeight;\r\n\r\n /*\r\n * test if Object.defineProperty function is fully supported\r\n */\r\n try {\r\n Object.defineProperty({}, \"x\", {});\r\n definePropertySupported = true;\r\n } catch (e) {\r\n definePropertySupported = false;\r\n }\r\n\r\n /*\r\n * helper function to safely log warning messages\r\n */\r\n /* eslint-disable no-console */\r\n\r\n /* eslint-enable no-console */\r\n\r\n // deprecate report.browser.size\r\n if (definePropertySupported) {\r\n Object.defineProperty(report.browser, \"size\", {\r\n get: function() {\r\n // warning(\r\n // \"browser.size is deprecated; use viewport.width and viewport.height\"\r\n // );\r\n return report.viewport.width + \" x \" + report.viewport.height;\r\n }\r\n });\r\n }\r\n\r\n // pull in raw values for layout viewport\r\n report.viewport.layout.width = document.documentElement.clientWidth;\r\n report.viewport.layout.height = document.documentElement.clientHeight;\r\n\r\n // define viewport zoom property\r\n report.viewport.zoom = report.viewport.layout.width / report.viewport.width;\r\n\r\n // are cookies enabled\r\n // can't trust this value (Microsoft Edge lies)\r\n // report.cookies = !!navigator.cookieEnabled;\r\n\r\n // truly check if cookies are enabled\r\n // generate UUID for cookie name\r\n uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";\r\n uuid = uuid.replace(/[xy]/g, function(c) {\r\n var r, v;\r\n\r\n r = (Math.random() * 16) | 0;\r\n v = c === \"x\" ? r : (r & 0x3) | 0x8;\r\n\r\n return v.toString(16);\r\n });\r\n // document.cookie = uuid;\r\n\r\n // if (document.cookie.indexOf(uuid) >= 0) {\r\n // report.cookies = true;\r\n // } else {\r\n // report.cookies = false;\r\n // }\r\n // // delete temporary cookie\r\n // document.cookie = uuid + \"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;\";\r\n\r\n // check plugins\r\n (function(plugins) {\r\n var i, l, plugin;\r\n\r\n if (plugins) {\r\n l = plugins.length;\r\n\r\n for (i = 0; i < l; i += 1) {\r\n plugin = plugins.item(i);\r\n\r\n // what version of Adobe Flash\r\n if (plugin.name.indexOf(\"Flash\") >= 0) {\r\n match = plugin.description.match(/\\b((\\d+\\.)+\\d+)\\b/);\r\n if (match && match[1]) {\r\n report.flash.version = match[1];\r\n }\r\n }\r\n\r\n // what version of Java\r\n if (plugin.name.indexOf(\"Java\") >= 0) {\r\n match = plugin.description.match(/\\b((\\d+\\.)+\\d+)\\b/);\r\n if (match && match[1]) {\r\n report.java.version = match[1];\r\n }\r\n }\r\n }\r\n }\r\n })(navigator.plugins);\r\n\r\n // extract operating system name from user agent\r\n if (userAgent.indexOf(\"Windows\") >= 0) {\r\n if (userAgent.indexOf(\"Windows Phone\") >= 0) {\r\n report.os.name = \"Windows Phone\";\r\n } else {\r\n report.os.name = \"Windows\";\r\n }\r\n }\r\n\r\n if (userAgent.indexOf(\"OS X\") >= 0 && userAgent.indexOf(\"Android\") === -1) {\r\n report.os.name = \"OS X\";\r\n }\r\n\r\n if (userAgent.indexOf(\"Linux\") >= 0) {\r\n report.os.name = \"Linux\";\r\n }\r\n\r\n if (userAgent.indexOf(\"like Mac OS X\") >= 0) {\r\n report.os.name = \"iOS\";\r\n }\r\n\r\n if (\r\n (userAgent.indexOf(\"Android\") >= 0 || userAgent.indexOf(\"Adr\") >= 0) &&\r\n userAgent.indexOf(\"Windows Phone\") === -1\r\n ) {\r\n report.os.name = \"Android\";\r\n }\r\n\r\n if (userAgent.indexOf(\"BB10\") >= 0) {\r\n report.os.name = \"BlackBerry\";\r\n }\r\n\r\n if (userAgent.indexOf(\"RIM Tablet OS\") >= 0) {\r\n report.os.name = \"BlackBerry Tablet OS\";\r\n }\r\n\r\n if (userAgent.indexOf(\"BlackBerry\") >= 0) {\r\n report.os.name = \"BlackBerryOS\";\r\n }\r\n\r\n if (userAgent.indexOf(\"CrOS\") >= 0) {\r\n report.os.name = \"Chrome OS\";\r\n }\r\n\r\n if (userAgent.indexOf(\"KAIOS\") >= 0) {\r\n report.os.name = \"KaiOS\";\r\n }\r\n\r\n // extract operating system version from user agent\r\n match = null;\r\n\r\n switch (report.os.name) {\r\n case \"Windows\":\r\n case \"Windows Phone\":\r\n if (userAgent.indexOf(\"Win16\") >= 0) {\r\n report.os.version = \"3.1.1\";\r\n } else if (userAgent.indexOf(\"Windows CE\") >= 0) {\r\n report.os.version = \"CE\";\r\n } else if (userAgent.indexOf(\"Windows 95\") >= 0) {\r\n report.os.version = \"95\";\r\n } else if (userAgent.indexOf(\"Windows 98\") >= 0) {\r\n if (userAgent.indexOf(\"Windows 98; Win 9x 4.90\") >= 0) {\r\n report.os.version = \"Millennium Edition\";\r\n } else {\r\n report.os.version = \"98\";\r\n }\r\n } else {\r\n match = userAgent.match(\r\n /Win(?:dows)?(?: Phone)?[ _]?(?:(?:NT|9x) )?((?:(\\d+\\.)*\\d+)|XP|ME|CE)\\b/\r\n );\r\n\r\n if (match && match[1]) {\r\n switch (match[1]) {\r\n case \"6.4\":\r\n // some versions of Firefox mistakenly used 6.4\r\n match[1] = \"10.0\";\r\n break;\r\n case \"6.3\":\r\n match[1] = \"8.1\";\r\n break;\r\n case \"6.2\":\r\n match[1] = \"8\";\r\n break;\r\n case \"6.1\":\r\n match[1] = \"7\";\r\n break;\r\n case \"6.0\":\r\n match[1] = \"Vista\";\r\n break;\r\n case \"5.2\":\r\n match[1] = \"Server 2003\";\r\n break;\r\n case \"5.1\":\r\n match[1] = \"XP\";\r\n break;\r\n case \"5.01\":\r\n match[1] = \"2000 SP1\";\r\n break;\r\n case \"5.0\":\r\n match[1] = \"2000\";\r\n break;\r\n case \"4.0\":\r\n match[1] = \"4.0\";\r\n break;\r\n default:\r\n // nothing\r\n break;\r\n }\r\n }\r\n }\r\n break;\r\n case \"OS X\":\r\n match = userAgent.match(/OS X ((\\d+[._])+\\d+)\\b/);\r\n break;\r\n case \"Linux\":\r\n // linux user agent strings do not usually include the version\r\n report.os.version = null;\r\n break;\r\n case \"iOS\":\r\n match = userAgent.match(/OS ((\\d+[._])+\\d+) like Mac OS X/);\r\n break;\r\n case \"Android\":\r\n match = userAgent.match(/(?:Android|Adr) (\\d+([._]\\d+)*)/);\r\n break;\r\n case \"BlackBerry\":\r\n case \"BlackBerryOS\":\r\n match = userAgent.match(/Version\\/((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"BlackBerry Tablet OS\":\r\n match = userAgent.match(/RIM Tablet OS ((\\d+\\.)+\\d+)/);\r\n break;\r\n case \"Chrome OS\":\r\n report.os.version = report.browser.version;\r\n break;\r\n case \"KaiOS\":\r\n match = userAgent.match(/KAIOS\\/(\\d+(\\.\\d+)*)/);\r\n break;\r\n default:\r\n // no good default behavior\r\n report.os.version = null;\r\n break;\r\n }\r\n\r\n if (match && match[1]) {\r\n // replace underscores in version number with periods\r\n match[1] = match[1].replace(/_/g, \".\");\r\n report.os.version = match[1];\r\n }\r\n if (report.os.name === \"Windows\" && report.os.version === \"10.0\") {\r\n report.os.version = \"10.0+\";\r\n }\r\n if (report.os.name === \"OS X\" && report.os.version) {\r\n // handle Mac OS X / OS X / macOS naming conventions\r\n var versions = report.os.version.split(\".\");\r\n if (versions.length >= 2) {\r\n var minorVersion = parseInt(versions[1], 10);\r\n if (minorVersion <= 7) {\r\n report.os.name = \"Mac OS X\";\r\n } else if (minorVersion >= 12) {\r\n report.os.name = \"macOS\";\r\n } else {\r\n report.os.name = \"OS X\";\r\n }\r\n }\r\n }\r\n\r\n // pull in screen info from W3C standard properties\r\n report.screen.width = screen.width;\r\n report.screen.height = screen.height;\r\n report.screen.colors = screen.colorDepth;\r\n if (window.devicePixelRatio && !isNaN(window.devicePixelRatio)) {\r\n report.screen.dppx = window.devicePixelRatio;\r\n } else {\r\n report.screen.dppx = 1;\r\n }\r\n\r\n // deprecate report.screen.size\r\n if (definePropertySupported) {\r\n Object.defineProperty(report.screen, \"size\", {\r\n get: function() {\r\n // warning(\r\n // \"screen.size is deprecated; use screen.width and screen.height\"\r\n // );\r\n return report.screen.width + \" x \" + report.screen.height;\r\n }\r\n });\r\n }\r\n\r\n // deprecate report.screen.resolution\r\n if (definePropertySupported) {\r\n Object.defineProperty(report.screen, \"resolution\", {\r\n get: function() {\r\n // warning(\r\n // \"screen.resolution is deprecated; multiply screen.width and screen.height by screen.dppx\"\r\n // );\r\n return (\r\n report.screen.dppx * report.screen.width +\r\n \" x \" +\r\n report.screen.dppx * report.screen.height\r\n );\r\n }\r\n });\r\n }\r\n\r\n // are web sockets supported\r\n report.websockets = !!window.WebSocket;\r\n\r\n // preferred language(s) for displaying pages\r\n report.lang = navigator.languages || navigator.language;\r\n\r\n // local date, time, and time zone\r\n report.timestamp = new Date().toString();\r\n\r\n return report;\r\n};\r\n\r\nexport default {\r\n getReport\r\n};\r\n","import axios from \"axios\";\r\nimport storage from \"@/services/app-storage\";\r\nimport helpers from \"@/services/helpers\";\r\nimport store from \"@/store/index\";\r\n\r\nlet jwt = storage.getJwtAuthToken();\r\nlet ecapiInstanceBaseUrl = helpers.ecApiBaseUrl;\r\nlet inactivityTimeout = window.appConfig.inactivityTimeout\r\n ? Number(window.appConfig.inactivityTimeout)\r\n : 20;\r\n\r\nlet inactivityTimeoutIndex = 0;\r\n\r\nlet ecapiAuthorizationValue = `Bearer ${jwt}`;\r\nlet ecapiHeaders = {\r\n \"x-app-id\": \"elphycloud_cp_vue\",\r\n Authorization: ecapiAuthorizationValue\r\n};\r\nlet ecapiInstance = axios.create({\r\n baseURL: ecapiInstanceBaseUrl,\r\n timeout: 90000\r\n // headers: ecapiHeaders\r\n});\r\n\r\nlet externalInstance = axios.create({\r\n timeout: 45000\r\n});\r\n\r\nfunction resetInActivityTimeout() {\r\n if (\r\n (window.location.pathname.toLowerCase() === \"/cp\" ||\r\n window.location.pathname.toLowerCase() === \"/admin\") &&\r\n store.state.isInactivityTimeoutEnable &&\r\n inactivityTimeout\r\n ) {\r\n window.clearTimeout(inactivityTimeoutIndex);\r\n inactivityTimeoutIndex = window.setTimeout(() => {\r\n if (\r\n (window.location.pathname.toLowerCase() === \"/cp\" ||\r\n window.location.pathname.toLowerCase() === \"/admin\") &&\r\n store.state.isInactivityTimeoutEnable\r\n )\r\n helpers.logOut();\r\n }, inactivityTimeout * 60 * 1000);\r\n }\r\n}\r\nfunction getTempCache(_tempCacheId) {\r\n return store.getters.currentSessionCacheById(_tempCacheId);\r\n}\r\n\r\nfunction until(conditionFunction) {\r\n const poll = resolve => {\r\n if (conditionFunction()) resolve();\r\n else\r\n setTimeout(() => {\r\n poll(resolve);\r\n }, 200);\r\n };\r\n\r\n return new Promise(poll);\r\n}\r\n\r\necapiInstance.interceptors.request.use(\r\n async function(config) {\r\n if (\r\n store.state.tokenLikelyExpired &&\r\n !config.url.toLowerCase().includes(\"account/refresh\")\r\n ) {\r\n if (!store.state.refreshingToken) {\r\n await store.dispatch(\"refreshAccessToken\");\r\n }\r\n await until(() => store.state.tokenLikelyExpired === false);\r\n }\r\n let tempCacheId = null;\r\n if (config.params && config.params.tempCacheId) {\r\n tempCacheId = config.params.tempCacheId;\r\n delete config.params.tempCacheId;\r\n }\r\n if (tempCacheId) {\r\n config.metadata = { ...tempCacheId };\r\n let tempCache = getTempCache(tempCacheId);\r\n if (tempCache && tempCache.length) {\r\n config.adapter = () => {\r\n return Promise.resolve({\r\n __cached: true,\r\n ...tempCache[0].response\r\n });\r\n };\r\n // return Promise.resolve({\r\n // response: { ...tempCache[0].response }\r\n // });\r\n }\r\n }\r\n resetInActivityTimeout();\r\n storage.setLastActivityDate(Date.now());\r\n\r\n store.commit(\"loadingStarted\");\r\n\r\n config.headers[\"Authorization\"] = `Bearer ${localStorage.getItem(\r\n \"Authorization\"\r\n ) || sessionStorage.getItem(\"Authorization\")}`;\r\n config.headers[\"x-app-id\"] = \"elphycloud_cp_vue\";\r\n\r\n if (store.state.clientId)\r\n config.headers[\"x-ec-client-id\"] = store.state.clientId;\r\n\r\n if (localStorage.getItem(\"CaptchaId\"))\r\n config.headers[\"x-ec-captcha-id\"] = localStorage.getItem(\"CaptchaId\");\r\n\r\n if (localStorage.getItem(\"CaptchaToken\")) {\r\n config.headers[\"x-ec-captcha-token\"] = localStorage.getItem(\r\n \"CaptchaToken\"\r\n );\r\n }\r\n\r\n if (store.state.userId) config.headers[\"x-ec-user-id\"] = store.state.userId;\r\n\r\n if (config.method === \"get\") {\r\n if (!config.params) config.params = {};\r\n\r\n if (config.headers[\"x-ec-search-query\"])\r\n config.params[\"search-query\"] = config.headers[\"x-ec-search-query\"];\r\n\r\n if (config.headers[\"x-ec-order-by\"])\r\n config.params[\"order-by\"] = config.headers[\"x-ec-order-by\"];\r\n\r\n if (config.headers[\"x-ec-page-number\"])\r\n config.params[\"page-number\"] = config.headers[\"x-ec-page-number\"];\r\n\r\n if (config.headers[\"x-ec-page-size\"])\r\n config.params[\"page-size\"] = config.headers[\"x-ec-page-size\"];\r\n\r\n if (config.headers[\"x-ec-order-direction\"])\r\n config.params[\"order-direction\"] =\r\n config.headers[\"x-ec-order-direction\"];\r\n\r\n if (config.headers[\"x-ec-client-id\"])\r\n config.params[\"client-id\"] = config.headers[\"x-ec-client-id\"];\r\n\r\n if (config.headers[\"x-ec-user-id\"])\r\n config.params[\"user-id\"] = config.headers[\"x-ec-user-id\"];\r\n }\r\n\r\n return config;\r\n },\r\n function(error) {\r\n store.commit(\"loadingEnded\");\r\n\r\n // Do something with request error\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\necapiInstance.interceptors.response.use(\r\n function(response) {\r\n if (response.__cached) {\r\n return response;\r\n }\r\n if (response.headers[\"x-ec-captcha-id\"]) {\r\n localStorage.setItem(\"CaptchaId\", response.headers[\"x-ec-captcha-id\"]);\r\n }\r\n if (response.headers[\"x-ec-captcha-token\"]) {\r\n localStorage.setItem(\r\n \"CaptchaToken\",\r\n response.headers[\"x-ec-captcha-token\"]\r\n );\r\n }\r\n if (\r\n response.status === 200 &&\r\n response.config.metadata &&\r\n response.config.metadata.infoItemId &&\r\n response.config.metadata.identifier\r\n ) {\r\n store.commit(\"submitCurrentSessionCache\", {\r\n infoItemId: response.config.metadata.infoItemId,\r\n identifier: response.config.metadata.identifier,\r\n response: { ...response }\r\n });\r\n }\r\n store.commit(\"loadingEnded\");\r\n if (response.headers[\"x-ec-version\"]) {\r\n let crntVersion = localStorage.getItem(\"AppVersion\");\r\n if (crntVersion !== response.headers[\"x-ec-version\"]) {\r\n localStorage.setItem(\"AppVersion\", response.headers[\"x-ec-version\"]);\r\n if (crntVersion) {\r\n //location.reload(true);\r\n }\r\n }\r\n }\r\n return response;\r\n },\r\n async function(error) {\r\n store.commit(\"loadingEnded\");\r\n if (error.response && error.response.status === 401) {\r\n // Access token has expired, refresh it\r\n if (!store.state.refreshingToken) {\r\n // store.commit(\"setRefreshingToken\", true);\r\n try {\r\n let token = await store.dispatch(\"refreshAccessToken\");\r\n if (!token) {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n ecapiAuthorizationValue = `Bearer ${token}`;\r\n ecapiHeaders.Authorization = `Bearer ${token}`;\r\n error.config.headers[\"Authorization\"] = `Bearer ${token}`;\r\n // Retry the original request\r\n // store.commit(\"setRefreshingToken\", false);\r\n return ecapiInstance(error.config);\r\n } catch {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n } else {\r\n await until(() => store.state.refreshingToken === false);\r\n error.config.headers[\"Authorization\"] = ecapiAuthorizationValue;\r\n return ecapiInstance(error.config);\r\n }\r\n } else if (error.response && error.response.status === 403) {\r\n store.commit(\"setToast\", {\r\n text: \"مجاز به انجام این عملیات نمی‌باشید.\",\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n } else if (error.response && error.response.status === 409) {\r\n store.commit(\"setDeletePrevntedItem\", error.response.data);\r\n store.commit(\"showDeletePrevntedAlert\");\r\n return Promise.reject(error);\r\n } else if (error.response && error.response.status !== 404) {\r\n if (\r\n store.state.appMode !== \"local\" &&\r\n error.response.data &&\r\n (error.response.data === \"RequiresDisplayCredit\" ||\r\n error.response.data === \"RequiresInfoModuleCredit\" ||\r\n error.response.data === \"NotEnoughStorage\")\r\n ) {\r\n store.commit(\"setStorePurchaseRequiredAlert\", {\r\n error: error.response.data\r\n });\r\n return Promise.reject(error);\r\n } else {\r\n if (error.response.config && error.response.config.url) {\r\n if (\r\n error.response.config.url\r\n .toLowerCase()\r\n .includes(\"resource/monitoring/\")\r\n ) {\r\n return Promise.reject(error);\r\n }\r\n }\r\n store.commit(\"setToast\", {\r\n text: helpers.createMessageFromApiResponse(error.response.data),\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n }\r\n } else if (!error.response || error.response.status >= 500) {\r\n store.commit(\"setToast\", {\r\n text: \"خطا در اتصال به سرور!\",\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n } else {\r\n return Promise.reject(error);\r\n }\r\n }\r\n);\r\n\r\nexport default {\r\n test: axios.create({\r\n baseURL: \"https://jsonplaceholder.typicode.com/todos/1\",\r\n timeout: 30000,\r\n headers: { \"x-app-id\": \"elphycloud_cp_vue\" }\r\n }),\r\n ecapi: ecapiInstance,\r\n external: externalInstance,\r\n ecapiHeaders,\r\n ecapiAuthorizationValue\r\n};\r\n","import axios from \"axios\";\r\nimport helpers from \"@/services/helpers\";\r\nimport storage from \"@/services/app-storage\";\r\nimport store from \"@/store/index\";\r\n\r\nlet jwt = storage.getJwtAuthToken();\r\nlet eqapiInstanceBaseUrl = helpers.eqApiBaseUrl;\r\n\r\nlet ecapiAuthorizationValue = `Bearer ${jwt}`;\r\nlet eqapiHeaders = {\r\n \"x-app-id\": \"elphycloud_cp_vue\",\r\n Authorization: ecapiAuthorizationValue\r\n};\r\nlet eqapiInstance = axios.create({\r\n baseURL: eqapiInstanceBaseUrl,\r\n timeout: 90000,\r\n headers: eqapiHeaders\r\n});\r\n\r\nlet externalInstance = axios.create({\r\n timeout: 45000\r\n});\r\n\r\nfunction until(conditionFunction) {\r\n const poll = resolve => {\r\n if (conditionFunction()) resolve();\r\n else\r\n setTimeout(() => {\r\n poll(resolve);\r\n }, 200);\r\n };\r\n\r\n return new Promise(poll);\r\n}\r\neqapiInstance.interceptors.request.use(\r\n async function(config) {\r\n if (\r\n store.state.tokenLikelyExpired &&\r\n !config.url.toLowerCase().includes(\"account/refresh\")\r\n ) {\r\n if (!store.state.refreshingToken) {\r\n await store.dispatch(\"refreshAccessToken\");\r\n }\r\n await until(() => store.state.tokenLikelyExpired === false);\r\n }\r\n store.commit(\"loadingStarted\");\r\n\r\n config.headers[\"Authorization\"] = `Bearer ${localStorage.getItem(\r\n \"Authorization\"\r\n ) || sessionStorage.getItem(\"Authorization\")}`;\r\n config.headers[\"x-app-id\"] = \"elphycloud_cp_vue\";\r\n\r\n if (store.state.clientId)\r\n config.headers[\"x-ec-client-id\"] = store.state.clientId;\r\n\r\n if (store.state.userId) config.headers[\"x-ec-user-id\"] = store.state.userId;\r\n\r\n if (config.method === \"get\") {\r\n if (!config.params) config.params = {};\r\n\r\n if (config.headers[\"x-ec-search-query\"])\r\n config.params[\"search-query\"] = config.headers[\"x-ec-search-query\"];\r\n\r\n if (config.headers[\"x-ec-order-by\"])\r\n config.params[\"order-by\"] = config.headers[\"x-ec-order-by\"];\r\n\r\n if (config.headers[\"x-ec-page-number\"])\r\n config.params[\"page-number\"] = config.headers[\"x-ec-page-number\"];\r\n\r\n if (config.headers[\"x-ec-page-size\"])\r\n config.params[\"page-size\"] = config.headers[\"x-ec-page-size\"];\r\n\r\n if (config.headers[\"x-ec-order-direction\"])\r\n config.params[\"order-direction\"] =\r\n config.headers[\"x-ec-order-direction\"];\r\n }\r\n\r\n return config;\r\n },\r\n async function(error) {\r\n store.commit(\"loadingEnded\");\r\n if (error.response && error.response.status === 401) {\r\n // Access token has expired, refresh it\r\n if (!store.state.refreshingToken) {\r\n // store.commit(\"setRefreshingToken\", true);\r\n try {\r\n let token = await store.dispatch(\"refreshAccessToken\");\r\n if (!token) {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n ecapiAuthorizationValue = `Bearer ${token}`;\r\n eqapiHeaders.Authorization = `Bearer ${token}`;\r\n error.config.headers[\"Authorization\"] = `Bearer ${token}`;\r\n // Retry the original request\r\n // store.commit(\"setRefreshingToken\", false);\r\n return eqapiInstance(error.config);\r\n } catch {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n } else {\r\n await until(() => store.state.refreshingToken === false);\r\n error.config.headers[\"Authorization\"] = ecapiAuthorizationValue;\r\n return eqapiInstance(error.config);\r\n }\r\n } else {\r\n return Promise.reject(error);\r\n }\r\n\r\n // Do something with request error\r\n }\r\n);\r\n\r\neqapiInstance.interceptors.response.use(\r\n function(response) {\r\n store.commit(\"loadingEnded\");\r\n store.commit(\"setElphyQueueServerError\", false);\r\n if (response.headers[\"x-agent-queue-local\"] === \"true\") {\r\n store.commit(\"setIsQmsLocal\", true);\r\n } else if (response.headers[\"x-agent-queue-local\"] === \"false\") {\r\n store.commit(\"setIsQmsLocal\", false);\r\n }\r\n if (\r\n response.headers[\"x-agent-queue-branchdepartmentid\"] &&\r\n response.headers[\"x-agent-queue-branchdepartmentid\"] !== \"na\"\r\n ) {\r\n store.commit(\r\n \"setQmsBranchDepartmentId\",\r\n response.headers[\"x-agent-queue-branchdepartmentid\"]\r\n );\r\n } else if (response.headers[\"x-agent-queue-branchdepartmentid\"] === \"na\") {\r\n store.commit(\"setQmsBranchDepartmentId\", \"\");\r\n }\r\n if (\r\n response.headers[\"x-agent-queue-branchid\"] &&\r\n response.headers[\"x-agent-queue-branchid\"] !== \"na\"\r\n ) {\r\n store.commit(\r\n \"setQmsBranchId\",\r\n response.headers[\"x-agent-queue-branchid\"]\r\n );\r\n } else if (response.headers[\"x-agent-queue-branchid\"] === \"na\") {\r\n store.commit(\"setQmsBranchId\", \"\");\r\n }\r\n return response;\r\n },\r\n function(error) {\r\n store.commit(\"loadingEnded\");\r\n if (error.response && error.response.status === 401) {\r\n helpers.goToLoginPage();\r\n } else if (error.response && error.response.status === 403) {\r\n store.commit(\"setToast\", {\r\n text: \"مجاز به انجام این عملیات نمی‌باشید.\",\r\n mode: \"error\"\r\n });\r\n } else if (error.response && error.response.status === 409) {\r\n store.commit(\"setDeletePrevntedItem\", error.response.data);\r\n store.commit(\"showDeletePrevntedAlert\");\r\n } else if (error.response && error.response.status !== 404) {\r\n store.commit(\"setToast\", {\r\n text: helpers.createMessageFromApiResponse(error.response.data),\r\n mode: \"error\"\r\n });\r\n } else if (!error.response || error.response.status >= 500) {\r\n store.commit(\"setToast\", {\r\n text: \"خطا در اتصال به سرور!\",\r\n mode: \"error\"\r\n });\r\n store.commit(\"setElphyQueueServerError\", true);\r\n }\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\nexport default {\r\n eqapi: eqapiInstance,\r\n external: externalInstance\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{style:({ zIndex: _vm.options.zIndex }),attrs:{\"max-width\":_vm.options.width},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.cancel.apply(null, arguments)}},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-toolbar',{attrs:{\"dark\":\"\",\"color\":_vm.options.color,\"dense\":\"\",\"flat\":\"\"}},[_c('v-toolbar-title',{staticClass:\"white--text\"},[_vm._v(_vm._s(_vm.title))])],1),_c('v-card-text',{directives:[{name:\"show\",rawName:\"v-show\",value:(!!_vm.message),expression:\"!!message\"}],staticClass:\"pa-4\"},[_vm._v(_vm._s(_vm.message))]),_c('v-card-actions',{staticClass:\"pt-0\"},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":_vm.options.color,\"text\":\"\"},nativeOn:{\"click\":function($event){return _vm.agree.apply(null, arguments)}}},[_vm._v(\"بله\")]),_c('v-btn',{attrs:{\"color\":\"grey\",\"text\":\"\"},nativeOn:{\"click\":function($event){return _vm.cancel.apply(null, arguments)}}},[_vm._v(\"انصراف\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\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/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Confirm.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/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Confirm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Confirm.vue?vue&type=template&id=b552c7ba&\"\nimport script from \"./Confirm.vue?vue&type=script&lang=js&\"\nexport * from \"./Confirm.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","module.exports = __webpack_public_path__ + \"img/elphy_agent_logo_color.2295e27a.png\";","import axios from \"axios\";\r\nimport helpers from \"@/services/helpers\";\r\nimport storage from \"@/services/app-storage\";\r\nimport store from \"@/store/index\";\r\n\r\nlet jwt = storage.getJwtAuthToken();\r\nlet erapiInstanceBaseUrl = helpers.erApiBaseUrl;\r\n\r\nlet ecapiAuthorizationValue = `Bearer ${jwt}`;\r\nlet erapiHeaders = {\r\n \"x-app-id\": \"elphycloud_cp_vue\",\r\n Authorization: ecapiAuthorizationValue\r\n};\r\nlet erapiInstance = axios.create({\r\n baseURL: erapiInstanceBaseUrl,\r\n timeout: 90000,\r\n headers: erapiHeaders\r\n});\r\n\r\nlet externalInstance = axios.create({\r\n timeout: 45000\r\n});\r\n\r\nfunction until(conditionFunction) {\r\n const poll = resolve => {\r\n if (conditionFunction()) resolve();\r\n else\r\n setTimeout(() => {\r\n poll(resolve);\r\n }, 200);\r\n };\r\n\r\n return new Promise(poll);\r\n}\r\n\r\nerapiInstance.interceptors.request.use(\r\n async function(config) {\r\n if (\r\n store.state.tokenLikelyExpired &&\r\n !config.url.toLowerCase().includes(\"account/refresh\")\r\n ) {\r\n if (!store.state.refreshingToken) {\r\n await store.dispatch(\"refreshAccessToken\");\r\n }\r\n await until(() => store.state.tokenLikelyExpired === false);\r\n }\r\n store.commit(\"loadingStarted\");\r\n\r\n config.headers[\"Authorization\"] = `Bearer ${localStorage.getItem(\r\n \"Authorization\"\r\n ) || sessionStorage.getItem(\"Authorization\")}`;\r\n config.headers[\"x-app-id\"] = \"elphycloud_cp_vue\";\r\n\r\n if (store.state.clientId)\r\n config.headers[\"x-ec-client-id\"] = store.state.clientId;\r\n\r\n if (store.state.userId) config.headers[\"x-ec-user-id\"] = store.state.userId;\r\n\r\n if (config.method === \"get\") {\r\n if (!config.params) config.params = {};\r\n\r\n if (config.headers[\"x-ec-search-query\"])\r\n config.params[\"search-query\"] = config.headers[\"x-ec-search-query\"];\r\n\r\n if (config.headers[\"x-ec-order-by\"])\r\n config.params[\"order-by\"] = config.headers[\"x-ec-order-by\"];\r\n\r\n if (config.headers[\"x-ec-page-number\"])\r\n config.params[\"page-number\"] = config.headers[\"x-ec-page-number\"];\r\n\r\n if (config.headers[\"x-ec-page-size\"])\r\n config.params[\"page-size\"] = config.headers[\"x-ec-page-size\"];\r\n\r\n if (config.headers[\"x-ec-order-direction\"])\r\n config.params[\"order-direction\"] =\r\n config.headers[\"x-ec-order-direction\"];\r\n\r\n if (config.headers[\"x-ec-client-id\"])\r\n config.params[\"client-id\"] = config.headers[\"x-ec-client-id\"];\r\n\r\n if (config.headers[\"x-ec-user-id\"])\r\n config.params[\"user-id\"] = config.headers[\"x-ec-user-id\"];\r\n }\r\n return config;\r\n },\r\n function(error) {\r\n store.commit(\"loadingEnded\");\r\n\r\n // Do something with request error\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\nerapiInstance.interceptors.response.use(\r\n function(response) {\r\n store.commit(\"loadingEnded\");\r\n //store.commit(\"setElphyQueueServerError\", false);\r\n return response;\r\n },\r\n async function(error) {\r\n store.commit(\"loadingEnded\");\r\n if (error.response && error.response.status === 401) {\r\n // Access token has expired, refresh it\r\n if (!store.state.refreshingToken) {\r\n // store.commit(\"setRefreshingToken\", true);\r\n try {\r\n let token = await store.dispatch(\"refreshAccessToken\");\r\n if (!token) {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n ecapiAuthorizationValue = `Bearer ${token}`;\r\n erapiHeaders.Authorization = `Bearer ${token}`;\r\n error.config.headers[\"Authorization\"] = `Bearer ${token}`;\r\n // Retry the original request\r\n // store.commit(\"setRefreshingToken\", false);\r\n return erapiInstance(error.config);\r\n } catch {\r\n helpers.logOut();\r\n return Promise.reject(error);\r\n }\r\n } else {\r\n await until(() => store.state.refreshingToken === false);\r\n error.config.headers[\"Authorization\"] = ecapiAuthorizationValue;\r\n return erapiInstance(error.config);\r\n }\r\n } else if (error.response && error.response.status === 403) {\r\n store.commit(\"setToast\", {\r\n text: \"مجاز به انجام این عملیات نمی‌باشید.\",\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n } else if (error.response && error.response.status === 409) {\r\n store.commit(\"setDeletePrevntedItem\", error.response.data);\r\n store.commit(\"showDeletePrevntedAlert\");\r\n } else if (error.response && error.response.status !== 404) {\r\n store.commit(\"setToast\", {\r\n text: helpers.createMessageFromApiResponse(error.response.data),\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n } else if (!error.response || error.response.status >= 500) {\r\n store.commit(\"setToast\", {\r\n text: \"خطا در اتصال به سرور!\",\r\n mode: \"error\"\r\n });\r\n return Promise.reject(error);\r\n //store.commit(\"setElphyQueueServerError\", true);\r\n } else {\r\n return Promise.reject(error);\r\n }\r\n }\r\n);\r\n\r\nexport default {\r\n erapi: erapiInstance,\r\n external: externalInstance\r\n};\r\n","import api from \"@/services/backend-api\";\r\nimport persianDate from \"persian-date\";\r\n// import fileDownload from \"js-file-download\";\r\nimport store from \"@/store/index\";\r\nimport helpers from \"@/services/helpers\";\r\n\r\nvar mixin = {\r\n created() {\r\n document.addEventListener(\"swUpdatedEvent\", this.mxPwaUpdated);\r\n },\r\n methods: {\r\n mxSimpleGet: function(source) {\r\n if (source) {\r\n if (source.startsWith(\"http\")) {\r\n api.external.get(source).then(function(response) {\r\n return response.data;\r\n // handle success\r\n });\r\n } else {\r\n api.ecapi.get(source).then(function(response) {\r\n return response.data;\r\n // handle success\r\n });\r\n }\r\n }\r\n },\r\n mxGetPersianDate: function(_date) {\r\n if (_date) return new persianDate(new Date(_date)).format(\"YYYY/M/D\");\r\n else return \"\";\r\n },\r\n mxGetPersianDateTimeByFormat: function(_date, _format) {\r\n if (_date) return new persianDate(new Date(_date)).format(_format);\r\n else return \"\";\r\n },\r\n mxGetPriceInTomanLocale: function(_price, _alreadyInToman) {\r\n let tomanPrice = _price;\r\n if (!_alreadyInToman) tomanPrice = Math.ceil(_price / 10);\r\n return `${tomanPrice.toLocaleString()} تومان`;\r\n },\r\n mxGetPriceInTomanLocaleNum: function(_price) {\r\n let tomanPrice = Math.ceil(_price / 10);\r\n return `${tomanPrice.toLocaleString()}`;\r\n },\r\n mxGetCartItemPrice: function(_cartItem) {\r\n let totalPrice = _cartItem.stockItem.price * _cartItem.count;\r\n\r\n let totalDiscount =\r\n _cartItem.stockItem.price *\r\n _cartItem.stockItem.discount *\r\n _cartItem.count;\r\n\r\n let totalSubscription = _cartItem.stockItem.monthlyFee * _cartItem.count;\r\n\r\n let totalPayment =\r\n _cartItem.stockItem.price *\r\n (1 - _cartItem.stockItem.discount) *\r\n _cartItem.count;\r\n return {\r\n totalPrice: totalPrice,\r\n totalDiscount: totalDiscount,\r\n totalSubscription: totalSubscription,\r\n totalPayment: totalPayment\r\n };\r\n },\r\n mxDownloadClientFile: function(_fileName, _originalName) {\r\n api.ecapi\r\n .get(`/Resource/Client/${_fileName}?download=true`)\r\n .then(response => {\r\n if (!response.data || !response.data.passKey) return;\r\n this.downloadURI(\r\n `${helpers.ecApiBaseUrl}Resource/Download/${\r\n response.data.passKey\r\n }?fileName=${encodeURI(_originalName)}`,\r\n _originalName\r\n );\r\n //fileDownload(response.data, _originalName);\r\n });\r\n },\r\n mxDownloadLayoutTemplate: function(\r\n _layoutId,\r\n _originalName,\r\n _isClientTemplate\r\n ) {\r\n let url = `/Resource/Client/LayoutTemplate/${_layoutId}`;\r\n if (!_isClientTemplate) url = `/Resource/LayoutTemplate/${_layoutId}`;\r\n\r\n api.ecapi.get(url).then(response => {\r\n if (!response.data || !response.data.passKey) return;\r\n this.downloadURI(\r\n `${helpers.ecApiBaseUrl}Resource/Download/${\r\n response.data.passKey\r\n }?fileName=${encodeURI(_originalName)}&ts=${Math.floor(\r\n new Date().valueOf() / 30000\r\n )}`,\r\n _originalName\r\n );\r\n // api.ecapi\r\n // .get(`/Resource/Download/${response.data.passKey}`, {\r\n // responseType: \"blob\",\r\n // timeout: 0\r\n // })\r\n // .then(fResponse => {\r\n // fileDownload(fResponse.data, _originalName);\r\n // });\r\n });\r\n },\r\n downloadURI(uri, name) {\r\n let link = document.createElement(\"a\");\r\n link.download = name;\r\n link.href = uri;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n },\r\n mxSuccessToast: function() {\r\n store.commit(\"setToast\", {\r\n text: \"با موفقیت انجام گردید.\",\r\n mode: \"success\"\r\n });\r\n },\r\n mxHasRole: function(_roles) {\r\n if (store.state.userRoles.includes(\"clientAdmin\")) return true;\r\n\r\n if (_roles)\r\n for (let role of _roles) {\r\n if (store.state.userRoles.includes(role)) return true;\r\n }\r\n\r\n if (store.state.userRoles.some(f => f.startsWith(\"admin\"))) return true;\r\n\r\n return false;\r\n },\r\n mxAdminHasRole: function(_roles) {\r\n if (store.state.userRoles.includes(\"admin\")) return true;\r\n\r\n if (_roles)\r\n for (let role of _roles) {\r\n if (store.state.userRoles.includes(role)) return true;\r\n }\r\n return false;\r\n },\r\n mxFileSize: function(_size) {\r\n if (1024 > _size) {\r\n return `${_size} B`;\r\n } else if (1024 * 1024 > _size && _size >= 1024) {\r\n return `${Math.floor(_size / 1024)} KB`;\r\n } else if (_size >= 1024 * 1024) {\r\n return `${Math.floor(_size / (1024 * 1024))} MB`;\r\n }\r\n },\r\n mxTruncate: function(_string, _length) {\r\n if (_string.length > _length)\r\n return `${_string.substring(0, _length)}...`;\r\n else return _string;\r\n },\r\n mxConfirm(_message) {\r\n return window.confirm(_message);\r\n },\r\n mxAlert(_message) {\r\n window.alert(_message);\r\n },\r\n mxProccessText(_text, onlyVariables) {\r\n if (!_text) return _text;\r\n let matches = _text.match(/@@[a-zA-Z0-9?_]{1,}@@/g);\r\n if (matches && matches.length)\r\n for (let match of matches) {\r\n let regex = new RegExp(match, \"g\");\r\n let replacement = store.getters.variable(match);\r\n _text = _text.replace(regex, replacement);\r\n }\r\n if (!onlyVariables) {\r\n let serviceMatches = _text.match(\r\n // eslint-disable-next-line no-useless-escape\r\n /{{[a-zA-Z?_\\d\\\\)\\\\(\\/.:+=*@!$&#%,|~`'\"\\-\\[\\] ]{1,}}}/g\r\n );\r\n if (serviceMatches && serviceMatches.length)\r\n for (let match of serviceMatches) {\r\n _text = _text.replace(match, \"\");\r\n }\r\n }\r\n\r\n return _text;\r\n },\r\n\r\n mxGetInfoModuleIcon: function(_codeName) {\r\n if (_codeName === \"ImGallery\") {\r\n return \"fal fa-image\";\r\n } else if (_codeName === \"ImNews\") {\r\n return \"fal fa-scroll\";\r\n } else if (_codeName === \"ImWebView\") {\r\n return \"fal fa-browser\";\r\n } else if (_codeName === \"ImVideo\") {\r\n return \"fal fa-film-alt\";\r\n } else if (_codeName === \"ImStream\") {\r\n return \"fal fa-broadcast-tower\";\r\n } else if (_codeName === \"ImRss\") {\r\n return \"fal fa-rss\";\r\n } else if (_codeName === \"ImWysiwyg\") {\r\n return \"fal fa-indent\";\r\n } else if (_codeName === \"ImCalendar\") {\r\n return \"fal fa-clock\";\r\n } else if (_codeName === \"ImNewspaper\") {\r\n return \"fal fa-newspaper\";\r\n } else if (_codeName === \"ImMenu\") {\r\n return \"fal fa-grip-vertical\";\r\n } else if (_codeName === \"ImSecMenu\") {\r\n return \"fal fa-grip-horizontal\";\r\n } else if (_codeName === \"ImPdf\") {\r\n return \"fal fa-file-pdf\";\r\n } else if (_codeName === \"ImSurvey\") {\r\n return \"fal fa-smile\";\r\n } else if (_codeName === \"ImForm\") {\r\n return \"fal fa-poll-h\";\r\n } else if (_codeName === \"ImQueue\") {\r\n return \"fal fa-receipt\";\r\n } else if (_codeName === \"ImElphyQueue\") {\r\n return \"fal fa-receipt\";\r\n } else if (_codeName === \"ImStore\") {\r\n return \"fal fa-store\";\r\n } else if (_codeName === \"ImElphyStore\") {\r\n return \"fal fa-store\";\r\n } else if (_codeName === \"ImMusic\") {\r\n return \"fal fa-music\";\r\n } else if (_codeName === \"ImKiosk\") {\r\n return \"fal fa-hand-back-point-up\";\r\n } else if (_codeName === \"ImWebService\") {\r\n return \"fal fa-cloud\";\r\n } else if (_codeName === \"ImLayout\") {\r\n return \"fal fa-table-layout\";\r\n } else {\r\n return \"fal fa-pen-square\";\r\n }\r\n },\r\n mxGetInfoModuleColor: function(_codeName) {\r\n if (_codeName === \"ImGallery\") {\r\n return \"red\";\r\n } else if (_codeName === \"ImVideo\") {\r\n return \"pink\";\r\n } else if (_codeName === \"ImMusic\") {\r\n return \"purple\";\r\n } else if (_codeName === \"ImNews\") {\r\n return \"deep-purple\";\r\n } else if (_codeName === \"ImWebView\") {\r\n return \"indigo\";\r\n } else if (_codeName === \"ImRss\") {\r\n return \"blue\";\r\n } else if (_codeName === \"ImCalendar\") {\r\n return \"light-blue\";\r\n } else if (_codeName === \"ImNewspaper\") {\r\n return \"cyan\";\r\n } else if (_codeName === \"ImStream\") {\r\n return \"teal\";\r\n } else if (_codeName === \"ImWysiwyg\") {\r\n return \"green\";\r\n } else if (_codeName === \"ImMenu\") {\r\n return \"light-green\";\r\n } else if (_codeName === \"ImSecMenu\") {\r\n return \"lime\";\r\n } else if (_codeName === \"ImSurvey\") {\r\n return \"amber\";\r\n } else if (_codeName === \"ImForm\") {\r\n return \"orange\";\r\n } else if (_codeName === \"ImPdf\") {\r\n return \"deep-orange\";\r\n } else if (_codeName === \"ImStore\") {\r\n return \"brown\";\r\n } else if (_codeName === \"ImElphyStore\") {\r\n return \"brown\";\r\n } else if (_codeName === \"ImQueue\") {\r\n return \"blue-grey\";\r\n } else if (_codeName === \"ImElphyQueue\") {\r\n return \"blue-grey\";\r\n } else if (_codeName === \"ImKiosk\") {\r\n return \"grey\";\r\n } else if (_codeName === \"ImWebService\") {\r\n return \"grey\";\r\n } else if (_codeName === \"ImLayout\") {\r\n return \"primary\";\r\n } else {\r\n return \"black\";\r\n }\r\n },\r\n mxGetInfoModuleBgColor: function(_codeName) {\r\n if (_codeName === \"ImGallery\") {\r\n return \"red lighten-5\";\r\n } else if (_codeName === \"ImVideo\") {\r\n return \"pink lighten-5\";\r\n } else if (_codeName === \"ImMusic\") {\r\n return \"purple lighten-5\";\r\n } else if (_codeName === \"ImNews\") {\r\n return \"deep-purple lighten-5\";\r\n } else if (_codeName === \"ImWebView\") {\r\n return \"indigo lighten-5\";\r\n } else if (_codeName === \"ImRss\") {\r\n return \"blue lighten-5\";\r\n } else if (_codeName === \"ImCalendar\") {\r\n return \"light-blue lighten-5\";\r\n } else if (_codeName === \"ImNewspaper\") {\r\n return \"cyan lighten-5\";\r\n } else if (_codeName === \"ImStream\") {\r\n return \"teal lighten-5\";\r\n } else if (_codeName === \"ImWysiwyg\") {\r\n return \"green lighten-5\";\r\n } else if (_codeName === \"ImMenu\") {\r\n return \"light-green lighten-5\";\r\n } else if (_codeName === \"ImSecMenu\") {\r\n return \"lime lighten-5\";\r\n } else if (_codeName === \"ImSurvey\") {\r\n return \"amber lighten-5\";\r\n } else if (_codeName === \"ImForm\") {\r\n return \"orange lighten-5\";\r\n } else if (_codeName === \"ImPdf\") {\r\n return \"deep-orange lighten-5\";\r\n } else if (_codeName === \"ImStore\") {\r\n return \"brown lighten-5\";\r\n } else if (_codeName === \"ImElphyStore\") {\r\n return \"brown lighten-5\";\r\n } else if (_codeName === \"ImQueue\") {\r\n return \"blue-grey lighten-5\";\r\n } else if (_codeName === \"ImElphyQueue\") {\r\n return \"blue-grey lighten-5\";\r\n } else if (_codeName === \"ImKiosk\") {\r\n return \"grey lighten-5\";\r\n } else if (_codeName === \"ImWebService\") {\r\n return \"grey lighten-5\";\r\n }\r\n },\r\n mxGetColorCode(_color) {\r\n if (_color === \"red\") {\r\n return \"#F44336\";\r\n } else if (_color === \"pink\") {\r\n return \"#E91E63\";\r\n } else if (_color === \"purple\") {\r\n return \"#9C27B0\";\r\n } else if (_color === \"deep-purple\") {\r\n return \"#673AB7\";\r\n } else if (_color === \"indigo\") {\r\n return \"#3F51B5\";\r\n } else if (_color === \"blue\") {\r\n return \"#2196F3\";\r\n } else if (_color === \"light-blue\") {\r\n return \"#03A9F4\";\r\n } else if (_color === \"cyan\") {\r\n return \"#00BCD4\";\r\n } else if (_color === \"teal\") {\r\n return \"#009688\";\r\n } else if (_color === \"green\") {\r\n return \"#4CAF50\";\r\n } else if (_color === \"light-green\") {\r\n return \"#8BC34A\";\r\n } else if (_color === \"lime\") {\r\n return \"#CDDC39\";\r\n } else if (_color === \"yellow\") {\r\n return \"#FFEB3B\";\r\n } else if (_color === \"amber\") {\r\n return \"#FFC107\";\r\n } else if (_color === \"orange\") {\r\n return \"#FF9800\";\r\n } else if (_color === \"deep-orange\") {\r\n return \"#FF5722\";\r\n } else if (_color === \"brown\") {\r\n return \"#795548\";\r\n } else if (_color === \"blue-grey\") {\r\n return \"#607D8B\";\r\n } else if (_color === \"grey\") {\r\n return \"#9E9E9E\";\r\n }\r\n },\r\n // eslint-disable-next-line\r\n mxGetInfoModuleTextBgColor(_codeName) {\r\n return \"white--text\";\r\n //return `${this.mxGetInfoModuleColor(_codeName)}--text text--lighten-5`;\r\n },\r\n mxGetInfoModuleTextColor(_codeName) {\r\n return `${this.mxGetInfoModuleColor(_codeName)}--text`;\r\n },\r\n mxOrderInfoModules: function(_modules) {\r\n for (let mlodule of _modules) {\r\n if (mlodule.infoModuleCodeName === \"ImGallery\") {\r\n mlodule.order = 0;\r\n } else if (mlodule.infoModuleCodeName === \"ImNews\") {\r\n mlodule.order = 3;\r\n } else if (mlodule.infoModuleCodeName === \"ImWebView\") {\r\n mlodule.order = 4;\r\n } else if (mlodule.infoModuleCodeName === \"ImMusic\") {\r\n mlodule.order = 2;\r\n } else if (mlodule.infoModuleCodeName === \"ImVideo\") {\r\n mlodule.order = 1;\r\n } else if (mlodule.infoModuleCodeName === \"ImStream\") {\r\n mlodule.order = 8;\r\n } else if (mlodule.infoModuleCodeName === \"ImRss\") {\r\n mlodule.order = 5;\r\n } else if (mlodule.infoModuleCodeName === \"ImWysiwyg\") {\r\n mlodule.order = 9;\r\n } else if (mlodule.infoModuleCodeName === \"ImCalendar\") {\r\n mlodule.order = 6;\r\n } else if (mlodule.infoModuleCodeName === \"ImNewspaper\") {\r\n mlodule.order = 7;\r\n } else if (mlodule.infoModuleCodeName === \"ImMenu\") {\r\n mlodule.order = 10;\r\n } else if (mlodule.infoModuleCodeName === \"ImSecMenu\") {\r\n mlodule.order = 11;\r\n } else if (mlodule.infoModuleCodeName === \"ImPdf\") {\r\n mlodule.order = 14;\r\n } else if (mlodule.infoModuleCodeName === \"ImSurvey\") {\r\n mlodule.order = 12;\r\n } else if (mlodule.infoModuleCodeName === \"ImForm\") {\r\n mlodule.order = 13;\r\n } else if (mlodule.infoModuleCodeName === \"ImStore\") {\r\n mlodule.order = 15;\r\n } else if (mlodule.infoModuleCodeName === \"ImElphyStore\") {\r\n mlodule.order = 15;\r\n } else if (mlodule.infoModuleCodeName === \"ImQueue\") {\r\n mlodule.order = 16;\r\n } else if (mlodule.infoModuleCodeName === \"ImElphyQueue\") {\r\n mlodule.order = 17;\r\n } else if (mlodule.infoModuleCodeName === \"ImKiosk\") {\r\n mlodule.order = 18;\r\n } else if (mlodule.infoModuleCodeName === \"ImWebService\") {\r\n mlodule.order = 19;\r\n } else {\r\n mlodule.order = 100;\r\n }\r\n }\r\n return _modules;\r\n },\r\n mxCheckAgentVersion(_browser, _browserVersion) {\r\n if (_browser !== \"Elphy Agent\") return true;\r\n\r\n let agentVersion = store.state.agentManifest.ElphyAgentVersion;\r\n\r\n if (!agentVersion) return true;\r\n\r\n var currentVersion = _browserVersion;\r\n var currentVersionSegments = _browserVersion.split(\".\");\r\n\r\n var versionSegments = agentVersion.split(\".\");\r\n\r\n if (currentVersion === agentVersion) {\r\n return true;\r\n }\r\n\r\n if (Number(currentVersionSegments[0]) > Number(versionSegments[0])) {\r\n return true;\r\n }\r\n if (Number(currentVersionSegments[0]) === Number(versionSegments[0])) {\r\n if (Number(currentVersionSegments[1]) > Number(versionSegments[1])) {\r\n return true;\r\n }\r\n if (Number(currentVersionSegments[1]) === Number(versionSegments[1])) {\r\n if (Number(currentVersionSegments[2]) > Number(versionSegments[2])) {\r\n return true;\r\n }\r\n if (\r\n Number(currentVersionSegments[2]) === Number(versionSegments[2])\r\n ) {\r\n if (\r\n Number(currentVersionSegments[3]) > Number(versionSegments[3])\r\n ) {\r\n return true;\r\n }\r\n if (\r\n Number(currentVersionSegments[3]) === Number(versionSegments[3])\r\n ) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n return false;\r\n },\r\n mxSetMonitoringConnection(_connection) {\r\n store.commit(\"setMonitoringConnection\", _connection);\r\n },\r\n mxGetMonitoringConnection() {\r\n return store.state.monitoringConnection;\r\n },\r\n mxSetMonitoringRtcConnection(_connection) {\r\n store.commit(\"setMonitoringRtcConnection\", _connection);\r\n },\r\n mxGetMonitoringRtcConnection() {\r\n return store.state.monitoringRtcConnection;\r\n },\r\n mxSetRtcChannelState(_state) {\r\n store.commit(\"setRtcChannelState\", _state);\r\n },\r\n mxGetIceServer() {\r\n return store.state.iceServer;\r\n },\r\n mxSetPosResponse(_response) {\r\n store.commit(\"setPosResponse\", _response);\r\n },\r\n mxPwaUpdated() {\r\n store.commit(\"setPwaUpdated\");\r\n },\r\n mxGoHome() {\r\n document.dispatchEvent(new CustomEvent(\"goHomeFromChildRecieved\"));\r\n },\r\n mxHasClientEnoughFreeSpace(_size) {\r\n if (store.state.clientContract && store.state.clientContract.isActive) {\r\n return (\r\n store.state.clientCredit.signageStorageUsed + _size <=\r\n store.state.clientContract.storage * 1024 * 1024\r\n );\r\n }\r\n if (store.state.clientCredit.storageIndex === -1) {\r\n return true;\r\n }\r\n let initialStorage = window.appConfig.initialStorage;\r\n let perIndexStorage = window.appConfig.perIndexStorage;\r\n let storageSpace =\r\n (initialStorage +\r\n perIndexStorage * store.state.clientCredit.storageIndex) *\r\n 1024 *\r\n 1024;\r\n return (\r\n store.state.clientCredit.signageStorageUsed + _size <= storageSpace\r\n );\r\n },\r\n mxConvertToEnglishNumber(_input) {\r\n var persianNumbers = [\"۰\", \"۱\", \"۲\", \"۳\", \"۴\", \"۵\", \"۶\", \"۷\", \"۸\", \"۹\"];\r\n var englishNumbers = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\r\n for (var i = 0; i < 10; i++) {\r\n _input = _input.replace(\r\n new RegExp(persianNumbers[i], \"g\"),\r\n englishNumbers[i]\r\n );\r\n }\r\n return _input;\r\n },\r\n mxCheckForPlaybackExpDate(_items) {\r\n if (\r\n _items &&\r\n _items.length &&\r\n (_items.find(f => f.expDate && new Date(f.expDate) <= new Date()) ||\r\n _items.find(f => f.airDate && new Date(f.airDate) > new Date()))\r\n ) {\r\n _items = _items.filter(\r\n f =>\r\n (!f.expDate || new Date(f.expDate) > new Date()) &&\r\n (!f.airDate || new Date(f.airDate) <= new Date())\r\n );\r\n }\r\n return _items;\r\n },\r\n mxSubmitPlaybackReport(_reportItem) {\r\n if (this.$route.query.preview) {\r\n return;\r\n }\r\n let now = new Date();\r\n let today = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(\r\n 2,\r\n \"0\"\r\n )}-${String(now.getDate()).padStart(2, \"0\")}`;\r\n if (!_reportItem) {\r\n return;\r\n }\r\n var reportString = localStorage.getItem(\"playbackReport\");\r\n if (!reportString) {\r\n localStorage.setItem(\"playbackReport\", JSON.stringify([]));\r\n reportString = \"[]\";\r\n }\r\n\r\n let report = JSON.parse(reportString);\r\n\r\n var previousRecord = report.find(\r\n f => f.contentId === _reportItem.contentId && f.date === today\r\n );\r\n\r\n if (previousRecord) {\r\n previousRecord.contentName = _reportItem.contentName;\r\n previousRecord.totalDuration += _reportItem.totalDuration;\r\n previousRecord.count += _reportItem.count;\r\n } else {\r\n report.push(_reportItem);\r\n }\r\n\r\n if (report.length > 100) {\r\n localStorage.setItem(\"playbackReport\", JSON.stringify([]));\r\n } else {\r\n localStorage.setItem(\"playbackReport\", JSON.stringify(report));\r\n }\r\n },\r\n mxSecondsToHMS(seconds) {\r\n const hours = Math.floor(seconds / 3600)\r\n .toString()\r\n .padStart(2, \"0\");\r\n const minutes = Math.floor((seconds % 3600) / 60)\r\n .toString()\r\n .padStart(2, \"0\");\r\n const secs = (seconds % 60).toString().padStart(2, \"0\");\r\n return `${hours}:${minutes}:${secs}`;\r\n },\r\n mxLightenHexColor(hex, percent) {\r\n // Ensure the hex color is valid and in the format \"#RRGGBB\"\r\n if (!/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(hex)) {\r\n return hex;\r\n }\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(hex.slice(1, 3), 16);\r\n const g = parseInt(hex.slice(3, 5), 16);\r\n const b = parseInt(hex.slice(5, 7), 16);\r\n\r\n // Calculate the lightened RGB values\r\n const lighten = value =>\r\n Math.min(255, Math.floor(value + (255 - value) * (percent / 100)));\r\n\r\n const newR = lighten(r);\r\n const newG = lighten(g);\r\n const newB = lighten(b);\r\n\r\n // Convert back to hex\r\n const toHex = value =>\r\n value\r\n .toString(16)\r\n .padStart(2, \"0\")\r\n .toUpperCase();\r\n\r\n return `#${toHex(newR)}${toHex(newG)}${toHex(newB)}`;\r\n },\r\n mxDarkenHexColor(hex, percent) {\r\n // Ensure the hex color is valid and in the format \"#RRGGBB\"\r\n if (!/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(hex)) {\r\n throw new Error(\"Invalid hex color format. Use #RRGGBB.\");\r\n }\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(hex.slice(1, 3), 16);\r\n const g = parseInt(hex.slice(3, 5), 16);\r\n const b = parseInt(hex.slice(5, 7), 16);\r\n\r\n // Calculate the darkened RGB values\r\n const darken = value =>\r\n Math.max(0, Math.floor(value * (1 - percent / 100)));\r\n\r\n const newR = darken(r);\r\n const newG = darken(g);\r\n const newB = darken(b);\r\n\r\n // Convert back to hex\r\n const toHex = value =>\r\n value\r\n .toString(16)\r\n .padStart(2, \"0\")\r\n .toUpperCase();\r\n\r\n return `#${toHex(newR)}${toHex(newG)}${toHex(newB)}`;\r\n },\r\n mxFlipHexColor(hex, percent) {\r\n // Normalize and validate the hex format\r\n if (!/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(hex)) {\r\n return hex;\r\n }\r\n\r\n // If the color has transparency, remove it\r\n const cleanHex = hex.length === 9 ? hex.slice(0, 7) : hex;\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(cleanHex.slice(1, 3), 16);\r\n const g = parseInt(cleanHex.slice(3, 5), 16);\r\n const b = parseInt(cleanHex.slice(5, 7), 16);\r\n\r\n // Determine if the color is light or dark using the luminance formula\r\n // Luminance formula: 0.2126*R + 0.7152*G + 0.0722*B\r\n const luminance = 0.2126 * r + 0.7152 * g + 0.0722 * b;\r\n const isLight = luminance > 128; // Threshold for light or dark\r\n\r\n // Adjust the color based on whether it's light or dark\r\n const adjust = isLight\r\n ? value => Math.max(0, Math.floor(value * (1 - percent / 100))) // Darken\r\n : value =>\r\n Math.min(255, Math.floor(value + (255 - value) * (percent / 100))); // Lighten\r\n\r\n const newR = adjust(r);\r\n const newG = adjust(g);\r\n const newB = adjust(b);\r\n\r\n // Convert back to hex\r\n const toHex = value =>\r\n value\r\n .toString(16)\r\n .padStart(2, \"0\")\r\n .toUpperCase();\r\n\r\n return `#${toHex(newR)}${toHex(newG)}${toHex(newB)}`;\r\n },\r\n mxFlipHexColor0(hex, percentage) {\r\n // Ensure the hex format is valid\r\n if (!/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(hex)) {\r\n return hex;\r\n }\r\n\r\n // Normalize to 6-character hex\r\n if (hex.length === 4) {\r\n hex = \"#\" + [...hex.slice(1)].map(c => c + c).join(\"\");\r\n }\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(hex.slice(1, 3), 16);\r\n const g = parseInt(hex.slice(3, 5), 16);\r\n const b = parseInt(hex.slice(5, 7), 16);\r\n\r\n // Calculate luminance to determine lightness\r\n const luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255;\r\n\r\n // Adjust the percentage based on lightness (light colors get darker, dark colors get lighter)\r\n const adjustment = luminance > 0.5 ? -percentage : percentage;\r\n\r\n // Helper to clamp values\r\n const clamp = (value, min, max) => Math.min(Math.max(value, min), max);\r\n\r\n // Adjust RGB values\r\n const adjust = channel =>\r\n clamp(Math.round(channel + (channel * adjustment) / 100), 0, 255);\r\n\r\n const newR = adjust(r);\r\n const newG = adjust(g);\r\n const newB = adjust(b);\r\n\r\n // Convert RGB back to hex\r\n const toHex = channel => channel.toString(16).padStart(2, \"0\");\r\n return `#${toHex(newR)}${toHex(newG)}${toHex(newB)}`;\r\n },\r\n mxIsLightColor(hex) {\r\n // Normalize and validate the hex format\r\n if (!/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(hex)) {\r\n return false;\r\n }\r\n\r\n // If the color has transparency, remove it\r\n const cleanHex = hex.length === 9 ? hex.slice(0, 7) : hex;\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(cleanHex.slice(1, 3), 16);\r\n const g = parseInt(cleanHex.slice(3, 5), 16);\r\n const b = parseInt(cleanHex.slice(5, 7), 16);\r\n\r\n // Calculate luminance using the relative luminance formula\r\n // Luminance formula: 0.2126*R + 0.7152*G + 0.0722*B\r\n const luminance = 0.2126 * r + 0.7152 * g + 0.0722 * b;\r\n\r\n // Return true if the color is light (luminance > 128), false otherwise\r\n //return luminance > 128;\r\n return luminance > 150;\r\n },\r\n mxCouldUseLocalCacheOnError(connectionError) {\r\n if (!connectionError || !connectionError.response) {\r\n return true;\r\n }\r\n if (\r\n connectionError.response.status === 500 ||\r\n connectionError.response.status === 304 ||\r\n connectionError.response.status === 408 ||\r\n connectionError.response.status === 429 ||\r\n connectionError.response.status > 500\r\n ) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n }\r\n};\r\nexport default mixin;\r\n","module.exports = __webpack_public_path__ + \"img/logo_sm.58479995.png\";","function copyToClipboard(text, id) {\r\n if (id) {\r\n let element = document.getElementById(id);\r\n let textArea = document.createElement(\"textarea\");\r\n textArea.value = text;\r\n textArea.style.position = \"fixed\";\r\n element.appendChild(textArea);\r\n textArea.focus();\r\n textArea.select();\r\n document.execCommand(\"copy\");\r\n element.removeChild(textArea);\r\n } else {\r\n let textArea = document.createElement(\"textarea\");\r\n textArea.value = text;\r\n textArea.style.position = \"fixed\";\r\n document.body.appendChild(textArea);\r\n textArea.focus();\r\n textArea.select();\r\n document.execCommand(\"copy\");\r\n document.body.removeChild(textArea);\r\n }\r\n}\r\n\r\n//edge doesnt support Object.fromEntries\r\nlet localStorageServer = \"\";\r\nlet remoteStorageServer = \"\";\r\nlet localServer = \"\";\r\ntry {\r\n //let urlSearchParams = new URLSearchParams(`?${location.href.split(\"?\")[1]}`);\r\n //let urlParams = Object.fromEntries(urlSearchParams.entries());\r\n let urlParams = {};\r\n decodeURIComponent(window.location.href).replace(\r\n /[?&]+([^=&]+)=([^&]*)/gi,\r\n function(_, key, value) {\r\n return (urlParams[key] = value);\r\n }\r\n );\r\n\r\n if (urlParams && urlParams.localserver) {\r\n localServer = urlParams.localserver;\r\n window.appConfig.ec_api_url = localServer;\r\n console.log(\"local server detected:\", window.appConfig.ec_api_url);\r\n }\r\n\r\n if (urlParams && urlParams.storageserver && !localServer) {\r\n localStorageServer = urlParams.storageserver.replace(/\\/+$/, \"\") + \"/\";\r\n console.log(\"storage server detected:\", localStorageServer);\r\n }\r\n\r\n // eslint-disable-next-line no-empty\r\n} catch {}\r\n\r\nif (window.appConfig.storage_server && !localServer) {\r\n remoteStorageServer =\r\n window.appConfig.storage_server.replace(/\\/+$/, \"\") + \"/\";\r\n} else {\r\n remoteStorageServer = window.appConfig.ec_api_url;\r\n}\r\n\r\nexport default {\r\n goToLoginPage: function() {\r\n localStorage.setItem(\"RememberMe\", \"false\");\r\n localStorage.removeItem(\"Authorization\");\r\n localStorage.removeItem(\"RefreshToken\");\r\n localStorage.removeItem(btoa(\"Roles\"));\r\n sessionStorage.removeItem(\"Authorization\");\r\n sessionStorage.removeItem(\"RefreshToken\");\r\n sessionStorage.removeItem(btoa(\"Roles\"));\r\n window.location.replace(\"/account\");\r\n },\r\n goToClientPanel: function() {\r\n window.location.replace(\"/cp\");\r\n },\r\n goToAdminPanel: function() {\r\n window.location.replace(\"/admin\");\r\n },\r\n goToSignagePage: function(_apiKey) {\r\n window.location.replace(`/signage.html#/${_apiKey}`);\r\n },\r\n goToPwaPage: function() {\r\n window.location.replace(`/pwa`);\r\n },\r\n logOut: function() {\r\n localStorage.setItem(\"RememberMe\", \"false\");\r\n localStorage.removeItem(\"Authorization\");\r\n localStorage.removeItem(\"RefreshToken\");\r\n localStorage.removeItem(btoa(\"Roles\"));\r\n sessionStorage.removeItem(\"Authorization\");\r\n sessionStorage.removeItem(\"RefreshToken\");\r\n sessionStorage.removeItem(btoa(\"Roles\"));\r\n this.goToLoginPage();\r\n },\r\n clearStorage(_startsWith) {\r\n let keysToBeDeleted = [];\r\n for (let i = 0; i < localStorage.length; i++) {\r\n let key = localStorage.key(i);\r\n if (key.startsWith(_startsWith)) {\r\n keysToBeDeleted.push(key);\r\n }\r\n }\r\n for (let key of keysToBeDeleted) {\r\n localStorage.removeItem(key);\r\n }\r\n },\r\n resolveSchedules: function(schedules, timePeriod) {\r\n let currentLayoutId = \"\";\r\n let currentScheduleId = \"\";\r\n let now = Math.floor(new Date().getTime() / 1000);\r\n for (let i = 0; i < schedules.length; i++) {\r\n if (now <= schedules[i].key && schedules[i].key < now + timePeriod * 60) {\r\n currentLayoutId = schedules[i].value;\r\n currentScheduleId = schedules[i].id;\r\n break;\r\n }\r\n }\r\n return {\r\n currentLayoutId: currentLayoutId,\r\n currentScheduleId: currentScheduleId\r\n };\r\n },\r\n createMessageFromApiResponse: function(_response) {\r\n let message = \"خطا! \";\r\n switch (_response) {\r\n case \"DeleteNotFoundError\":\r\n message += \"آیتم یافت نشد.\";\r\n break;\r\n case \"MaxCartNumberReachedError\":\r\n message += \"حداکثر تعداد مجاز\";\r\n break;\r\n case \"RepoResultError\":\r\n message += \"خطای نتایج\";\r\n break;\r\n case \"DeleteConflict\":\r\n message += \"از این آیتم در جای دیگری استفاده شده است.\";\r\n break;\r\n case \"NotInStock\":\r\n message += \"عدم موجودی انبار\";\r\n break;\r\n case \"StoreItemAlreadySubscribed\":\r\n message += \"در اشتراک‌های شما موجود است.\";\r\n break;\r\n case \"RequiresCredit\":\r\n message += \"عدم اعتبار کافی\";\r\n break;\r\n case \"RequiresDisplayCredit\":\r\n message += \"اشتراک نمایشگر به اندازه کافی ندارید\";\r\n break;\r\n case \"RequiresInfoModuleCredit\":\r\n message += \"اشتراک اینفوماژول مناسب ندارید\";\r\n break;\r\n case \"NotActive\":\r\n message += \"آیتم فعال نیست\";\r\n break;\r\n case \"ServerError\":\r\n message += \"خطای سرور\";\r\n break;\r\n case \"AccountLocked\":\r\n message += \"این حساب کاربری قفل گردیده است.\";\r\n break;\r\n case \"SignInNotSucceeded\":\r\n message += \"ورود شما موفقیت‌آمیز نبود.\";\r\n break;\r\n case \"ClientSuspended\":\r\n message += \"کاربر مجاز نمی‌باشد.\";\r\n break;\r\n case \"SignInClientNotFound\":\r\n message += \"نام کاربری یا کلمه‌عبور صحیح نمی‌باشد.\";\r\n break;\r\n case \"RegisterNotSucceeded\":\r\n message += \"ثبت نام موفقیت آمیز نبود.\";\r\n break;\r\n case \"RegisterDuplicateUserNameError\":\r\n message += \"این نام‌کاربری قبلا ثبت گردیده است.\";\r\n break;\r\n case \"NotEnoughDeposit\":\r\n message += \"سپرده ناکافی\";\r\n break;\r\n case \"NotEnoughPoints\":\r\n message += \"امتیاز ناکافی\";\r\n break;\r\n case \"TicketNoLongerOpen\":\r\n message += \"این تیکت بسته شده است.\";\r\n break;\r\n case \"UrlNotLocal\":\r\n message += \"آدرس نادرست\";\r\n break;\r\n case \"SmsCodeNotValid\":\r\n message += \"کد معتبر نمی‌باشد.\";\r\n break;\r\n case \"ZeroLengthFile\":\r\n message += \"سایز فایل ۰ است.\";\r\n break;\r\n case \"NullFile\":\r\n message += \"فایل خالی است\";\r\n break;\r\n case \"InvalidType\":\r\n message += \"فرمت غیرمجاز\";\r\n break;\r\n case \"NotEnoughStorage\":\r\n message += \"فضای ذخیره‌سازی کافی ندارید.\";\r\n break;\r\n case \"TooBigFile\":\r\n message += \"سایز فایل بیشتر از حد مجاز\";\r\n break;\r\n case \"SaveError\":\r\n message += \"ذخیره نگردید\";\r\n break;\r\n case \"ApiKeyNotValid\":\r\n message += \"api key وارد شده صحیح نمی‌باشد.\";\r\n break;\r\n case \"OrderExpired\":\r\n message += \"سفارش شما منقضی گردیده است.\";\r\n break;\r\n case \"NameAlreadyExisted\":\r\n message += \"نام انتخاب شده تکراری است.\";\r\n break;\r\n case \"PasswordError\":\r\n message += \"اطلاعات صحیح نمی‌باشد\";\r\n break;\r\n case \"SubscriptionLessThanDisplayCountError\":\r\n message += \"اشتراک کمتر از تعداد نمایشگرها نمی‌تواند باشد.\";\r\n break;\r\n case \"SubscriptionLessThanStorageError\":\r\n message += \"اشتراک کمتر از فضای استفاده شده نمی‌تواند باشد.\";\r\n break;\r\n case \"PhoneNumberNotConfirmed\":\r\n message += \"شماره تلفن همراه شما تایید نشده است.\";\r\n break;\r\n case \"TfaTokenNotValid\":\r\n message += \"کُد وارد شده صحیح نمی‌باشد.\";\r\n break;\r\n case \"SignInTimeNotAllowedForUser\":\r\n message += \"در این زمان مجاز به وارد شدن نیستید.\";\r\n break;\r\n case \"ReservationCodeNotFound\":\r\n message += \"رزروی با این کد یافت نشد.\";\r\n break;\r\n case \"AlreadyIssued\":\r\n message += \"برای این کد قبلاً نوبت صادر شده است.\";\r\n break;\r\n case \"ReservationIsLate\":\r\n message += \"زمان رزرو شما گذشته است.\";\r\n break;\r\n case \"ReservationIsEarly\":\r\n message += \"هنوز زمان رزرو شما فرا نرسیده است.\";\r\n break;\r\n case \"InvoiceInfoIncomplete\":\r\n message += \"اطلاعات مالی را کامل وارد نمایید.\";\r\n break;\r\n case \"NationalCardRequired\":\r\n message += \"ابتدا تصویر کارت ملی خود را آپلود کنید.\";\r\n break;\r\n case \"WrongContractEndDate\":\r\n message += \"تاریخ پایان قرارداد اشتباه است.\";\r\n break;\r\n case \"NoInfoModulesChosen\":\r\n message += \"هیچ اینفوماژولی انتخاب نشده است.\";\r\n break;\r\n case \"ClientHasContractCantAddToCart\":\r\n message +=\r\n \"خرید این محصول با توجه به وضعیت قرارداد شما امکان‌پذیر نمی‌باشد.\";\r\n break;\r\n case \"ShortCodeAlreadyExists\":\r\n message += \"این کد قبلا ثبت گردیده است.\";\r\n break;\r\n case \"AlreadyExists\":\r\n message += \"تکراری است.\";\r\n break;\r\n case \"InvalidEmailOrPassFormat\":\r\n message += \"فرمت نام کاربری و یا رمز عبور مورد قبول نیست.\";\r\n break;\r\n case \"SimplePassFormat\":\r\n message += \"فرمت رمز عبور ساده و مورد قبول نیست.\";\r\n break;\r\n case \"InvalidEmailFormat\":\r\n message += \"فرمت نام کاربری مورد قبول نیست.\";\r\n break;\r\n case \"SignatureFail\":\r\n message += \"فایل معتبر نیست.\";\r\n break;\r\n case \"AccessLimited\":\r\n message += \"دسترسی شما محدود شده است.\";\r\n break;\r\n case \"BranchIdAlreadyExists\":\r\n message += \"کد شعبه تکراری است.\";\r\n break;\r\n\r\n default:\r\n message += \"\";\r\n }\r\n return message;\r\n },\r\n registerServiceWorker: function() {\r\n const prod = process.env.NODE_ENV === \"production\";\r\n let newWorker;\r\n const shouldSW = \"serviceWorker\" in navigator && prod;\r\n if (shouldSW) {\r\n navigator.serviceWorker.register(\"/service-worker.js\").then(reg => {\r\n setInterval(() => {\r\n reg.update();\r\n }, 3600 * 1000);\r\n\r\n reg.addEventListener(\"updatefound\", () => {\r\n // An updated service worker has appeared in reg.installing!\r\n newWorker = reg.installing;\r\n\r\n newWorker.addEventListener(\"statechange\", () => {\r\n // Has service worker state changed?\r\n switch (newWorker.state) {\r\n case \"installed\":\r\n // There is a new service worker available, show the notification\r\n if (navigator.serviceWorker.controller) {\r\n newWorker.postMessage({ action: \"skipWaiting\" });\r\n }\r\n break;\r\n }\r\n });\r\n });\r\n });\r\n\r\n let refreshing;\r\n navigator.serviceWorker.addEventListener(\"controllerchange\", function() {\r\n if (refreshing) return;\r\n document.dispatchEvent(new CustomEvent(\"swUpdatedEvent\"));\r\n localStorage.setItem(\"sw_updated\", new Date().valueOf());\r\n // window.setTimeout(() => {\r\n // window.location.reload();\r\n // }, 5000);\r\n refreshing = true;\r\n });\r\n }\r\n },\r\n downloadTextFile: function(filename, text) {\r\n var element = document.createElement(\"a\");\r\n element.setAttribute(\r\n \"href\",\r\n \"data:text/plain;charset=utf-8,\" + encodeURIComponent(text)\r\n );\r\n element.setAttribute(\"download\", filename);\r\n\r\n element.style.display = \"none\";\r\n document.body.appendChild(element);\r\n\r\n element.click();\r\n\r\n document.body.removeChild(element);\r\n },\r\n\r\n //ecApiBaseUrl: process.env.VUE_APP_EC_API_BASE_URL,\r\n ecApiBaseUrl: window.appConfig.ec_api_url.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n ecBaseUrl: window.appConfig.ec_api_url.replace(/\\/+$/, \"\") + \"/\",\r\n ecMonitorServer: window.appConfig.monitor_server\r\n ? window.appConfig.monitor_server.replace(/\\/+$/, \"\") + \"/\"\r\n : window.appConfig.ec_api_url.replace(/\\/+$/, \"\") + \"/\",\r\n ecApiMonitorServer: window.appConfig.monitor_server\r\n ? window.appConfig.monitor_server.replace(/\\/+$/, \"\") + \"/Api/v1/\"\r\n : window.appConfig.ec_api_url.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n\r\n eqApiBaseUrl: window.appConfig.queue_server.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n eqBaseUrl: window.appConfig.queue_server.replace(/\\/+$/, \"\") + \"/\",\r\n esApiBaseUrl: window.appConfig.store_server.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n esBaseUrl: window.appConfig.store_server.replace(/\\/+$/, \"\") + \"/\",\r\n erApiBaseUrl: window.appConfig.report_server.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n erBaseUrl: window.appConfig.report_server.replace(/\\/+$/, \"\") + \"/\",\r\n enApiBaseUrl: window.appConfig.notify_server.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n enBaseUrl: window.appConfig.notify_server.replace(/\\/+$/, \"\") + \"/\",\r\n eqmApiBaseUrl:\r\n window.appConfig.queue_monitor_server.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n eqmBaseUrl: window.appConfig.queue_monitor_server.replace(/\\/+$/, \"\") + \"/\",\r\n // ecApiBaseUrlBackup: window.appConfig.ec_api_url_backup\r\n // ? window.appConfig.ec_api_url_backup.replace(/\\/+$/, \"\") + \"/Api/v1/\"\r\n // : \"\",\r\n // ecBaseUrlBackup: window.appConfig.ec_api_url_backup\r\n // ? window.appConfig.ec_api_url_backup.replace(/\\/+$/, \"\") + \"/\"\r\n // : \"\",\r\n storageServerBaseUrl: localStorageServer\r\n ? localStorageServer.replace(/\\/+$/, \"\") + \"/Api/v1/local/\"\r\n : remoteStorageServer.replace(/\\/+$/, \"\") + \"/Api/v1/\",\r\n\r\n copyToClipboard\r\n};\r\n","import Vue from \"vue\";\r\nimport VeeValidate, { Validator } from \"vee-validate\";\r\nimport fa from \"vee-validate/dist/locale/fa\";\r\n//import VeeValidate, { Validator } from \"vee-validate\";\r\n\r\nVue.use(VeeValidate, {\r\n classes: true,\r\n classNames: {\r\n valid: \"is-valid\",\r\n invalid: \"is-invalid\"\r\n }\r\n});\r\nValidator.localize(\"fa\", fa);\r\n//Vue.use(VeeValidate);\r\n\r\nexport default {};\r\n"],"sourceRoot":""}