{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/auth/mutations.js","webpack:///./src/store/auth/actions.js","webpack:///./src/store/auth/index.js","webpack:///./src/store/user/mutations.js","webpack:///./src/store/user/actions.js","webpack:///./src/store/user/index.js","webpack:///./src/store/messages/mutations.js","webpack:///./src/store/messages/actions.js","webpack:///./src/store/messages/index.js","webpack:///./src/store/campaigns/mutations.js","webpack:///./src/store/campaigns/actions.js","webpack:///./src/store/campaigns/index.js","webpack:///./src/store/social/mutations.js","webpack:///./src/store/social/actions.js","webpack:///./src/store/social/index.js","webpack:///./src/store/tags/mutations.js","webpack:///./src/store/tags/actions.js","webpack:///./src/store/tags/index.js","webpack:///./src/store/userscope/mutations.js","webpack:///./src/store/userscope/actions.js","webpack:///./src/store/userscope/index.js","webpack:///./src/store/post/mutations.js","webpack:///./src/store/post/actions.js","webpack:///./src/store/post/index.js","webpack:///./src/store/calendar/mutations.js","webpack:///./src/store/calendar/actions.js","webpack:///./src/store/calendar/index.js","webpack:///./src/store/socialcampaigns/mutations.js","webpack:///./src/store/socialcampaigns/actions.js","webpack:///./src/store/socialcampaigns/index.js","webpack:///./src/store/reset/mutations.js","webpack:///./src/store/reset/actions.js","webpack:///./src/store/reset/index.js","webpack:///./src/store/quotes/index.js","webpack:///./src/store/store.js","webpack:///./src/utils/EventsHandler.js","webpack:///./src/api/API.js","webpack:///./src/components/Spinner.vue","webpack:///./src/components/Spinner.vue?575d","webpack:///./src/api/users.js","webpack:///./src/utils/TimeFunctions.js","webpack:///./src/components/user/FakeUserPanel.vue?dfa4","webpack:///./src/components/formelements/AjaxSearchSelect.vue","webpack:///./src/components/formelements/AjaxSearchSelect.vue?9d57","webpack:///./src/css/img/logo.png","webpack:///./src/components/user/UserRoleSelect.vue","webpack:///./src/components/user/UserRoleSelect.vue?953b","webpack:///./src/App.vue","webpack:///./src/components/SideNav.vue","webpack:///./src/components/user/FakeUserPanel.vue","webpack:///./src/components/user/FakeUserPanel.vue?a06e","webpack:///./src/components/ProfilePanel.vue","webpack:///./src/components/user/UserScopeSelect.vue","webpack:///./src/components/user/UserScopeSelect.vue?8386","webpack:///./src/components/ProfilePanel.vue?9b59","webpack:///./src/components/CodyWidget.vue","webpack:///./src/components/CodyWidget.vue?f838","webpack:///./src/components/SideNav.vue?aa49","webpack:///./src/components/TheHeader.vue","webpack:///./src/components/TheHeader.vue?687e","webpack:///./src/components/ConfirmBox.vue","webpack:///./src/components/ConfirmBox.vue?f279","webpack:///./src/router/routes/home.js","webpack:///./src/router/routes/tags.js","webpack:///./src/router/routes/users.js","webpack:///./src/router/routes/userscopes.js","webpack:///./src/router/routes/campaigns.js","webpack:///./src/router/routes/socials.js","webpack:///./src/router/routes/login.js","webpack:///./src/router/routes/forgotpass.js","webpack:///./src/router/routes/reset.js","webpack:///./src/router/routes/notfound.js","webpack:///./src/router/routes/mockup.js","webpack:///./src/router/routes/quotes.js","webpack:///./src/router/routes/sudo.js","webpack:///./src/router/routes.js","webpack:///./src/router/index.js","webpack:///./src/utils/MessagesFunctions.js","webpack:///./src/utils/StyleFunctions.js","webpack:///./src/App.vue?8ecf","webpack:///./src/main.js","webpack:///./src/components/user/UserListElement.vue","webpack:///./src/components/user/UserListElement.vue?4c4f","webpack:///./src/utils/DateTimeUtils.js","webpack:///./src/utils/Capabilities.js","webpack:///./src/components/FileUpload.vue","webpack:///./src/components/ImageAi.vue","webpack:///./src/components/ImageAi.vue?4137","webpack:///./src/components/FileUpload.vue?321a","webpack:///./src/store/VuexPaths.js","webpack:///./src/components/formelements/AjaxSearchSelect.vue?7e87","webpack:///./src/api/userscopes.js","webpack:///./src/components/SideNav.vue?2a61","webpack:///./src/utils/ColumnsResizer.js","webpack:///./src/utils/RolesAndPolicies.js","webpack:///./src/components/formelements/EmailInput.vue","webpack:///./src/components/formelements/EmailInput.vue?36f1","webpack:///./src/components/FileUpload.vue?c47e","webpack:///./src/components/Spinner.vue?d2cc","webpack:///./src/css/img/placeholder.png","webpack:///./src/api/Endpoints.js","webpack:///./src/components/formelements/ErrorMessage.vue","webpack:///./src/components/formelements/ErrorMessage.vue?5714","webpack:///./src/App.vue?e1a2","webpack:///./src/components/ProfilePanel.vue?a6f2","webpack:///./src/components/ImageAi.vue?17e5","webpack:///./src/components/formelements/TextInput.vue","webpack:///./src/components/formelements/TextInput.vue?4112"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","auth_request","state","status","auth_forgot","pwdForgot","auth_forgot_undo","auth_forgot_success","auth_success","token","expiration","realToken","auth_error","logout","me","identity_request","loading","identity_success","realMe","mocking","lvl","roles","currentMe","policies","getPoliciesByRoleName","currentRole","loglevel","identity_switch","newRole","role","identity_switch_request","user","identity_switch_success","axios","defaults","headers","common","identity_switch_me_success","identity_switch_reset","identity_switch_error","identity_error","mutations","login","async","commit","API","post","ApiEndPoints","LOGIN","forgotPassword","undoForgotPassword","resetPassword","email","PASSWORD_RESET","changePassword","password","passwordConfirmation","dologout","USER_ME","alterEgo","switchRole","MOCK","id","actions","authModule","namespaced","getters","isLoggedIn","authStatus","realRole","_state$me","user_request","users_success","pagination","CurrentPage","visitedPages","find","forEach","index","toReplace","users","u","assign","users_error","user_selected_role","users_clear","empty_filter","indx","activeFilters","findIndex","f","filter","filtered","filter_request","emptySearch","allRoles","do_filter","clear_filters","update_request","update_success","updated","update_error","save_request","save_success","unshift","save_error","remove_error","remove_success","savecolumnsizes","sizes","columnsSizes","upload_success","response","userId","avatar","do_sort","sorting","sort","a","b","userName","localeCompare","createdAt","single_get_success","payload","isPublisher","isConcessionaire","useCapabilities","usePublisherController","endpoint","PUBLISHERS","USERS","JSON","parse","userScopes","USER_SCOPE","changeUserRole","root","params","search","url","USER_ROLE_ADMIN","USER_ROLE_ADVERTISER","USER_SCOPE_PUBLISHER_DISCRIMINATOR","USER_ROLE_PUBLISHER_ADMIN","USER_ROLE_PUBLISHER_USER","USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR","USER_ROLE_CONCESSIONAIRE_ADMIN","USER_ROLE_CONCESSIONAIRE_USER","update","patch","saveUser","createUser","clearList","remove","delete","upload","fileData","formData","FormData","append","getSingle","userModule","paged","currentPage","pageSize","PageSize","offset","selected","message_hide","show","title","message_show","msg","close","messagesModule","get_success","campaign","campaigns","concat","get_error","by_tag_success","clear","facebookPages","analyticsPages","single","newCampaigns","tag_update_error","tag_update_success","storetags","campaignTags","social_sync_success","campaignId","socialCampaigns","social","socialId","social_sync_error","social_remove_success","advertiserUser","monetize_success","social_campaign_authorized","authorized","social_campaign_accepted","accepted","approved_socials_success","socials","delete_event_success","delete_event_error","analytics_socials_success","analytics_socials_request","social_campaign_price_updated","publishdate_error","publishdate_success","CAMPAIGNS","bytag","tags","map","query","join","syncTags","tagId","addSocial","SOCIAL_CAMPAIGNS","removeSocial","postCampaigns","put","authorize","accept","monetize","split","socialName","getApprovedSocialsForCampaign","updateSocialPrices","getAnalyticsForCampaign","isAdvertiser","publishDate","sharedExtendedProperties","deleteEvent","campaignsModule","social_request","social_success","so","social_error","fb_request","fb_success","fb_error","social_selected","social_save_request","social_save_success","social_save_error","social_by_tag_success","social_clear","social_edit","editing","social_tag_update_error","social_fetch_error","social_tag_update_success","social_fetch_success","fb_reset_token_success","fb_refresh_token_success","fb_get_pages_success","newSocials","facebookList","SOCIAL_FB","list","SOCIAL","discriminator","updateSocialTags","fetchfacebook","SOCIAL_IG","getSingleFb","resetFacebookTokens","refreshFacebookTokens","getFacebookPages","filter_existing_pages","pages","socialModule","facebook","instagram","_state$pagination","_state$pagination2","tags_request","tags_success","tag_single_success","current","tags_error","tags_save_success","tags_clear","newTags","tags_update_success","log","getTags","TAGS","getSingleTag","createTag","tagName","description","tagsModule","userscope_request","userscope_success","userscope_error","userscope_save_request","scope","userscope_save_success","creating","userscope_save_error","userscope_selected_role","available","userscope_clear","userScope","userScopeId","logo","us","createUserScope","concessionaireId","userScopeModule","scopes","concessionaires","publishers","posts","facebook_error","searchResult","facebook_search_success","facebook_assign_success","facebook_advert_create_success","adverts","facebook_advert_post_assign_success","postId","newPosts","remove_success_advert","newAdverts","POST_FB","facebookSearch","startsWith","facebookAssignPost","removeFacebookPost","createFacebookAdvertisment","POST_FB_ADVERT","insertFacebookAdvPost","facebookAdId","removeFacebookAdvertisment","postModule","events","items","item","startDate","Date","start","dateTime","endDate","end","isAllDay","diffDates","summary","allDay","extendedProperties","loadcount","delete_success","GOOGLE_CALENDAR","queryDates","calendarModule","proposed_success","proposed","socialCampaignsModule","facebook_reset_oauth","resettingFacebook","resettingFacebookId","resettingFacebookName","facebook_reset_oauth_close","resetModule","quotesModule","quotes","setQuotes","addQuote","quote","fetchQuotes","createQuote","persist","createPersistedState","paths","store","createStore","auth","reset","userscope","messages","calendar","socialcampaigns","plugins","EventsHandler","publish","handlers","this","handler","subscribe","unsubscribe","handlerIdx","indexOf","method","_error$response","_error$response2","handleErrorMessage","postData","_error$response3","_error$response4","errorResponseData","_errorResponseData$er","errors","er","class","_createElementVNode","_hoisted_2","_createElementBlock","_hoisted_1","_hoisted_3","__exports__","render","apiUserFunction","debounce","func","wait","context","args","arguments","later","_normalizeClass","$props","className","label","_toDisplayString","config","_createBlock","_component_Multiselect","trackBy","valueProp","placeholder","noOptionsText","searchable","filterResults","clearOnSearch","options","$setup","getselectOptions","disabled","ref","selectedValue","$event","onSelect","onDeselect","onDeSelect","onOpen","onClose","onSearchChange","onSearch","_withCtx","option","handleTagRemove","onClick","_withModifiers","tagPress","_cache","onMousedown","emits","components","Multiselect","props","Boolean","default","String","keysuffix","Number","feedUrl","required","setup","emit","multiselect","selectOptions","reactive","fillOptions","el","opt","getPaginatedOptions","PageNumber","panel","removeEventListener","onPanelScroll","refreshOptions","setupScrollingPanel","bottomReach","scrollHeight","scrollTop","clientHeight","hasPagesToLoad","TotalPages","$el","querySelector","addEventListener","_multiselect$value","isOpen","onChange","onRoleSelect","_Fragment","_renderList","_hoisted_4","_hoisted_5","_hoisted_6","computed","Roles","showConfirm","_component_confirm_box","messageTitle","onHideModal","onCloseMessage","gridContainerStyle","_createVNode","_component_the_header","_component_side_nav","onToggleSize","toggleMenuSize","_component_router_view","rows","isAdmin","_component_CodyWidget","toggleAccountMenu","style","_normalizeStyle","_$setup$currentRole","API_BASE","_component_router_link","to","emitter","canManageUsers","canManageScopes","_hoisted_7","canManageCampaigns","_hoisted_8","canManageSocials","_hoisted_9","canManageTags","_hoisted_10","showMockPost","_hoisted_11","canManageQuotes","_hoisted_12","consideredDay","_hoisted_13","_component_VueCal","active-view","xsmall","hide-view-selector","time","transitions","disable-views","selected-date","width","height","clickToNavigate","_hoisted_14","accountMenuVisible","_hoisted_15","showProfile","_component_ProfilePanel","_hoisted_16","_$setup$realMe","_$setup$realMe2","_hoisted_17","resetUser","switchUser","openMimicUser","_component_fake_user_panel","_hoisted_18","_hoisted_19","_hoisted_20","_Teleport","onInput","userNameSearchChange","userTypeSelected","userType","userRoleSelected","userRole","possibleRoles","_component_AjaxSearchSelect","concessionaireSelected","concessionaireDeselected","concessionaire","_hoisted_21","_hoisted_22","publisherSelected","publisher","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_component_UserListElement","userSelected","_hoisted_29","onReset","UserListElement","AjaxSearchSelect","_","useStore","router","useRouter","concessionaireSelect","scrollingPanel","paginationData","TotalCount","HasNext","HasPrevious","updatePaginationData","newData","getUsers","apiUserScopeFunction","endpointUsers","onMounted","dispatch","MESSAGE","onUnmounted","filterChanged","conc","scopesList","len","pub","concIndx","pubIndx","typeIndx","roleIndx","location","onSubmit","_component_FileUpload","fileurl","_$setup$me","onImageSelected","_component_text_input","_component_email_input","_component_user_role_select","_component_user_scope_select","selectedUser","_$setup$me2","$emit","_ctx","save","onScopeSelect","Array","UserScopeSelect","UserRoleSelect","EmailInput","TextInput","FileUpload","inject","files","form","uploadAvatar","hasAvatar","keys","mounted","loadScript","methods","codySettings","widget_id","FakeUserPanel","VueCal","ProfilePanel","CodyWidget","showRoleSwitch","REAL_ROLE","DO_LOGOUT","handleSelected","selectedOption","SWITCH_ROLE","today","now","dtOpts","year","month","day","toLocaleDateString","_imports_0","aria-label","$data","componentKey","routes","rout","path","$options","menu","created","on","back","includes","Home","home","component","meta","requiresAuth","beforeEnter","from","next","exception","Tags","resetResizerValues","tagById","Users","userById","UserScopes","userscopes","userscopeByID","Campaigns","campaignByID","Socials","socialByID","Login","ForgotPassword","forgot","ResetPassword","PageNotFound","notfound","PostMockup","mockup","List","Edit","Preview","editQuote","quotePreview","SudoPanel","sudo","createRouter","history","createWebHistory","beforeEach","matched","some","record","MESSAGE_SHOW","MESSAGE_TITLE","MESSAGE_CLOSE","getMainGridClassname","bigMenu","USER_ROLE_SUPER","SideNav","TheHeader","ConfirmBox","route","useRoute","IS_LOGGED","ME","provide","TOKEN","getTime","$router","http","currentRoute","interceptors","use","__isRetryRequest","mitt","app","createApp","App","globalProperties","mount","openProfile","usern","userid","selectedId","timeStampToFormattedDate","timestamp","date","replace","RegExp","timeStampToFormattedDateTime","toLocaleTimeString","dayhours","strNumToNumber","numString","charAt","parseInt","substr","diffTime","Math","abs","diffDays","ceil","POLICY_MANAGE_USERS","POLICY_MANAGE_TAG","POLICY_MANAGE_CAMPAIGN","POLICY_MANAGE_SOCIAL","POLICY_MANAGE_QUOTES","POLICY_MANAGE_USERSCOPE","currentFileUrl","onImageClick","deleteImage","OpenImageAi","showImageAi","_component_ImageAi","AiData","ImageAiData","CloseImageAi","onResponseSelected","handleDallEResponseSelected","onAidataUpdated","refName","fileSelected","multiple","_KeepAlive","step","onDescriptionInput","maxlength","isLoading","_component_Spinner","AiResponses","selectedIndex","selectResponse","revised_prompt","content","alt","prev","nextButtonText","preventNext","selectedResponse","Spinner","_props$AiData","_props$AiData2","_props$AiData3","_props$AiData4","_props$AiData5","_props$AiData6","startCal","watch","newVal","immediate","deep","_data$description","GenerateContent","substring","confirm","GetAiResponses","amount","AI","prompt","imageData","b64_json","ImageAi","IaImageDescription","uploaderInput","currentImage","NewAiData","click","reader","FileReader","readAsDataURL","test","base64Data","DO_LOGIN","GET_USER_SCOPES","tools","card","calendarColumn","latestColumn","toolStyle","cardStyle","listStyle","calendarStyle","latestStyle","totalSize","onTotalSize","getBoundingClientRect","homeColumnResize","diff","currentWidth","newColumnWidth","cardW","usersColumnResize","toolsWidth","listWidth","hasCard","campaignColumnResize","storePath","disableElementUserSelect","querySelectorAll","classList","add","enableElementUserSelect","POLICY_SAMEUSER","POLICY_OWNSSOCIAL","SuperUser","AdminUser","AdvertiserUser","ConcessionaireAdmin","ConcessionaireUser","PublisherAdmin","PublisherUser","_component_ErrorMessage","validationStatus","vuel","uemail","text","onBlur","handleBlur","ErrorMessage","rules","useVuelidate","$dirty","process","PUBLISHERS_TEST","FACEBOOK_HELPER","ADVERTISERS","QUOTES","$error","$errors","$property","$message","labelClassName"],"mappings":"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","file":"js/app.60a00400.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"campaigns~home\":\"campaigns~home\",\"home\":\"home\",\"campaigns~socials~tags~users~userscopes\":\"campaigns~socials~tags~users~userscopes\",\"campaigns~socials\":\"campaigns~socials\",\"campaigns\":\"campaigns\",\"socials\":\"socials\",\"tags\":\"tags\",\"users\":\"users\",\"userscopes\":\"userscopes\",\"mockup\":\"mockup\",\"forgotpassword\":\"forgotpassword\",\"login\":\"login\",\"notfound\":\"notfound\",\"resetpassword\":\"resetpassword\"}[chunkId]||chunkId) + \".\" + {\"campaigns~home\":\"a40778f0\",\"home\":\"32cdc7cd\",\"campaigns~socials~tags~users~userscopes\":\"178b3e04\",\"campaigns~socials\":\"9fc362fe\",\"campaigns\":\"3b4b42d2\",\"socials\":\"2bd171de\",\"tags\":\"b1cdf99b\",\"users\":\"cf79dc1a\",\"userscopes\":\"a61c0260\",\"chunk-2d0aacc0\":\"781a9fe0\",\"chunk-2d0ab514\":\"7569de31\",\"chunk-2d0b1e5f\":\"f7ba2b45\",\"chunk-2d0b21c6\":\"b423d82a\",\"chunk-2d0b326e\":\"11200203\",\"chunk-2d0b34b9\":\"67a1e8d2\",\"chunk-2d0ba549\":\"8b19b03d\",\"chunk-2d0bceb4\":\"a5053621\",\"chunk-2d0bddf4\":\"122c8421\",\"chunk-2d0bdf49\":\"05befe2c\",\"chunk-2d0c0ebf\":\"c4064d78\",\"chunk-2d0c1979\":\"00c5b9a1\",\"chunk-2d0c1b75\":\"12f89525\",\"chunk-2d0cf715\":\"3787f115\",\"chunk-2d0d691f\":\"c9e436d5\",\"chunk-2d0d836a\":\"0926a230\",\"chunk-2d0da410\":\"332c5263\",\"chunk-2d0e1743\":\"583c7a96\",\"chunk-2d0e19ee\":\"93b3ff16\",\"chunk-2d0e1c30\":\"781e06c3\",\"chunk-2d0e8e41\":\"eee67c29\",\"chunk-2d0e9358\":\"d7bbb34a\",\"chunk-2d0f0fd0\":\"24792fb2\",\"chunk-2d0f11af\":\"6590d7ea\",\"chunk-2d2091bd\":\"3a78a0f8\",\"chunk-2d209206\":\"03d53ab9\",\"chunk-2d20e860\":\"35392a9d\",\"chunk-2d20f169\":\"1a0dc994\",\"chunk-2d20f186\":\"638652de\",\"chunk-2d21009e\":\"b7e1c746\",\"chunk-2d212bf1\":\"942ef35a\",\"chunk-2d21329e\":\"95a2822b\",\"chunk-2d216257\":\"58872a85\",\"chunk-06a4ea12\":\"d61852ad\",\"mockup\":\"3ab95370\",\"chunk-2d216f68\":\"618a909d\",\"chunk-2d21a426\":\"b6308af4\",\"chunk-2d21d4e1\":\"606250e3\",\"chunk-2d21e3f7\":\"bdc570cf\",\"chunk-2d221be7\":\"59581416\",\"chunk-2d224d24\":\"333ff0f2\",\"chunk-2d22d9a8\":\"c234d083\",\"chunk-2d22d9ba\":\"735f8e3c\",\"chunk-2d22db83\":\"14ad5a01\",\"chunk-2d237752\":\"fb8359fc\",\"chunk-309f0bda\":\"fb3a4d56\",\"chunk-73ddd982\":\"16a8caf3\",\"chunk-dd8de80c\":\"687f589c\",\"forgotpassword\":\"fe612ea3\",\"login\":\"e66ce4c6\",\"notfound\":\"2b8af900\",\"resetpassword\":\"229f6d1e\",\"chunk-158989b8\":\"b3203908\",\"chunk-2d216214\":\"fe4bb11d\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"campaigns~home\":1,\"home\":1,\"campaigns~socials~tags~users~userscopes\":1,\"campaigns~socials\":1,\"campaigns\":1,\"socials\":1,\"tags\":1,\"users\":1,\"userscopes\":1,\"chunk-06a4ea12\":1,\"mockup\":1,\"chunk-309f0bda\":1,\"chunk-73ddd982\":1,\"chunk-dd8de80c\":1,\"forgotpassword\":1,\"login\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"campaigns~home\":\"campaigns~home\",\"home\":\"home\",\"campaigns~socials~tags~users~userscopes\":\"campaigns~socials~tags~users~userscopes\",\"campaigns~socials\":\"campaigns~socials\",\"campaigns\":\"campaigns\",\"socials\":\"socials\",\"tags\":\"tags\",\"users\":\"users\",\"userscopes\":\"userscopes\",\"mockup\":\"mockup\",\"forgotpassword\":\"forgotpassword\",\"login\":\"login\",\"notfound\":\"notfound\",\"resetpassword\":\"resetpassword\"}[chunkId]||chunkId) + \".\" + {\"campaigns~home\":\"0d6eabd3\",\"home\":\"e11ad5c2\",\"campaigns~socials~tags~users~userscopes\":\"0c99f26e\",\"campaigns~socials\":\"2750f2dc\",\"campaigns\":\"8825009b\",\"socials\":\"a76751ee\",\"tags\":\"59bee815\",\"users\":\"de5359d5\",\"userscopes\":\"7cad556b\",\"chunk-2d0aacc0\":\"31d6cfe0\",\"chunk-2d0ab514\":\"31d6cfe0\",\"chunk-2d0b1e5f\":\"31d6cfe0\",\"chunk-2d0b21c6\":\"31d6cfe0\",\"chunk-2d0b326e\":\"31d6cfe0\",\"chunk-2d0b34b9\":\"31d6cfe0\",\"chunk-2d0ba549\":\"31d6cfe0\",\"chunk-2d0bceb4\":\"31d6cfe0\",\"chunk-2d0bddf4\":\"31d6cfe0\",\"chunk-2d0bdf49\":\"31d6cfe0\",\"chunk-2d0c0ebf\":\"31d6cfe0\",\"chunk-2d0c1979\":\"31d6cfe0\",\"chunk-2d0c1b75\":\"31d6cfe0\",\"chunk-2d0cf715\":\"31d6cfe0\",\"chunk-2d0d691f\":\"31d6cfe0\",\"chunk-2d0d836a\":\"31d6cfe0\",\"chunk-2d0da410\":\"31d6cfe0\",\"chunk-2d0e1743\":\"31d6cfe0\",\"chunk-2d0e19ee\":\"31d6cfe0\",\"chunk-2d0e1c30\":\"31d6cfe0\",\"chunk-2d0e8e41\":\"31d6cfe0\",\"chunk-2d0e9358\":\"31d6cfe0\",\"chunk-2d0f0fd0\":\"31d6cfe0\",\"chunk-2d0f11af\":\"31d6cfe0\",\"chunk-2d2091bd\":\"31d6cfe0\",\"chunk-2d209206\":\"31d6cfe0\",\"chunk-2d20e860\":\"31d6cfe0\",\"chunk-2d20f169\":\"31d6cfe0\",\"chunk-2d20f186\":\"31d6cfe0\",\"chunk-2d21009e\":\"31d6cfe0\",\"chunk-2d212bf1\":\"31d6cfe0\",\"chunk-2d21329e\":\"31d6cfe0\",\"chunk-2d216257\":\"31d6cfe0\",\"chunk-06a4ea12\":\"b5e92e95\",\"mockup\":\"ffae4107\",\"chunk-2d216f68\":\"31d6cfe0\",\"chunk-2d21a426\":\"31d6cfe0\",\"chunk-2d21d4e1\":\"31d6cfe0\",\"chunk-2d21e3f7\":\"31d6cfe0\",\"chunk-2d221be7\":\"31d6cfe0\",\"chunk-2d224d24\":\"31d6cfe0\",\"chunk-2d22d9a8\":\"31d6cfe0\",\"chunk-2d22d9ba\":\"31d6cfe0\",\"chunk-2d22db83\":\"31d6cfe0\",\"chunk-2d237752\":\"31d6cfe0\",\"chunk-309f0bda\":\"3670ffba\",\"chunk-73ddd982\":\"4680c516\",\"chunk-dd8de80c\":\"94dd20f0\",\"forgotpassword\":\"7ebf9341\",\"login\":\"6ed949b8\",\"notfound\":\"31d6cfe0\",\"resetpassword\":\"31d6cfe0\",\"chunk-158989b8\":\"31d6cfe0\",\"chunk-2d216214\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import axios from 'axios'\r\nimport {getPoliciesByRoleName} from '../../utils/RolesAndPolicies'\r\n/**\r\n * \r\n * ======================================== MUTATIONS\r\n */\r\n\r\nconst auth_request = (state) => {\r\n state.status = 'loading'\r\n }\r\n const auth_forgot = (state) => {\r\n state.pwdForgot = true\r\n }\r\n const auth_forgot_undo = (state)=> {\r\n state.pwdForgot = false\r\n }\r\n const auth_forgot_success = (state)=> {\r\n state.pwdForgot = false\r\n }\r\n \r\n const auth_success = (state, {token, expiration})=> {\r\n state.status = 'logged'\r\n state.token = token\r\n state.realToken = token\r\n state.expiration = expiration\r\n state.pwdForgot = false\r\n }\r\n \r\n const auth_error = (state)=> {\r\n state.status = 'logerror'\r\n }\r\n \r\n const logout = (state) => {\r\n state.status = ''\r\n state.token = null\r\n state.expiration = ''\r\n state.pwdForgot = false,\r\n state.me = null\r\n }\r\n \r\n const identity_request = (state)=>{\r\n state.loading = true\r\n }\r\n \r\n const identity_success = (state, {data})=>{\r\n /* console.log('id success')\r\n console.log(data) */\r\n state.loading = false\r\n state.me = data\r\n state.realMe = data\r\n state.mocking = false\r\n const lvl = data.roles[0]\r\n state.currentMe = data\r\n state.currentMe.policies = getPoliciesByRoleName(lvl)\r\n state.realMe.policies = getPoliciesByRoleName(lvl)\r\n \r\n state.currentRole = {\r\n loglevel:lvl,\r\n policies:getPoliciesByRoleName(lvl)\r\n }\r\n }\r\n \r\n const identity_switch=(state, {newRole})=>{\r\n state.currentRole = {\r\n loglevel:newRole.role,\r\n policies:getPoliciesByRoleName(newRole.role)\r\n }\r\n }\r\n const identity_switch_request=(state, user)=>{\r\n state.loading = true\r\n state.me = user\r\n \r\n }\r\n const identity_switch_success=(state, {data})=>{\r\n state.loading = false\r\n state.mocking = true\r\n state.token = data.token\r\n axios.defaults.headers.common['Authorization'] = 'bearer ' + data.token\r\n state.token = data.token \r\n }\r\n\r\n const identity_switch_me_success =(state, {data}) => {\r\n state.currentMe = data\r\n const lvl = state.currentMe.roles[0]\r\n state.currentMe.policies = getPoliciesByRoleName(lvl)\r\n }\r\n\r\n const identity_switch_reset =(state) =>{\r\n state.loading = false\r\n state.me = state.realMe\r\n state.token = state.realToken\r\n \r\n state.mocking = false\r\n \r\n const lvl = state.realMe.roles[0]\r\n \r\n state.currentMe = state.realMe\r\n \r\n state.currentRole = {\r\n loglevel:lvl,\r\n policies:getPoliciesByRoleName(lvl)\r\n }\r\n axios.defaults.headers.common['Authorization'] = 'bearer ' + state.token\r\n } \r\n const identity_switch_error =(state)=>{\r\n state.loading = false\r\n state.me = state.realMe\r\n }\r\n const identity_error =(state)=>{\r\n state.loading = false\r\n state.me = null\r\n }\r\n \r\n \r\n \r\nexport const mutations = {\r\n auth_request,\r\n auth_success,\r\n auth_error,\r\n auth_forgot,\r\n auth_forgot_undo,\r\n auth_forgot_success,\r\n logout,\r\n identity_request,\r\n identity_success,\r\n identity_error,\r\n identity_switch,\r\n identity_switch_request,\r\n identity_switch_success,\r\n identity_switch_error,\r\n identity_switch_reset,\r\n identity_switch_me_success\r\n }","import axios from 'axios'\r\nimport { ApiEndPoints } from '../../api/Endpoints';\r\nimport { API } from '../../api/API';\r\n\r\n/**\r\n * \r\n * ======================================== ACTIONS\r\n */\r\n\r\n\r\nconst login = async ({commit}, user) => {\r\n commit('auth_request')\r\n try {\r\n const {expiration, token} = await API.post(ApiEndPoints.LOGIN, user)\r\n axios.defaults.headers.common['Authorization'] = 'bearer ' + token\r\n commit('auth_success', {token, expiration})\r\n } catch (error) {\r\n commit('auth_error')\r\n throw new Error(error.message)\r\n }\r\n }\r\n \r\n const forgotPassword = async ({commit}) => {\r\n commit('auth_forgot')\r\n } \r\n const undoForgotPassword = async ({commit}) => {\r\n \r\n commit('auth_forgot_undo')\r\n } \r\n\r\n const resetPassword = async ({commit}, {email}) => {\r\n \r\n try {\r\n await API.get(ApiEndPoints.PASSWORD_RESET+'/'+ email)\r\n commit('auth_forgot_success')\r\n } catch (error) {\r\n commit('auth_error')\r\n throw new Error(error.message)\r\n }\r\n }\r\n const changePassword = async ({commit}, {password, passwordConfirmation, token}) => {\r\n \r\n try {\r\n await API.post(ApiEndPoints.PASSWORD_RESET+'/'+ token,{password, passwordConfirmation} )\r\n commit('auth_forgot_success')\r\n } catch (error) {\r\n commit('auth_error')\r\n throw new Error(error.message)\r\n }\r\n }\r\n \r\n const dologout = async ({commit})=> {\r\n commit('logout')\r\n delete axios.defaults.headers.common['Authorization']\r\n }\r\n \r\n const me = async ({commit})=>{\r\n \r\n commit('identity_request')\r\n try {\r\n const {data} = await API.get(ApiEndPoints.USER_ME)\r\n commit('identity_success' ,{ data })\r\n } catch (error) {\r\n commit('identity_error')\r\n }\r\n }\r\n const alterEgo = async ({commit})=>{\r\n \r\n commit('identity_request')\r\n try {\r\n const {data} = await API.get(ApiEndPoints.USER_ME)\r\n commit('identity_switch_me_success' ,{ data })\r\n } catch (error) {\r\n commit('identity_error')\r\n }\r\n }\r\n \r\n const switchRole = async ({commit}, newRole)=>{\r\n commit('identity_switch_request', newRole )\r\n try {\r\n const {data} = await API.get(ApiEndPoints.MOCK+'/'+ newRole.id)\r\n commit('identity_switch_success' ,{ data })\r\n\r\n } catch (error) {\r\n commit('identity_switch_error')\r\n }\r\n }\r\n\r\nexport const actions = {\r\n login,\r\n dologout,\r\n me,\r\n alterEgo,\r\n switchRole,\r\n forgotPassword,\r\n resetPassword,\r\n undoForgotPassword,\r\n changePassword\r\n }","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\nexport const authModule = {\r\n state () {\r\n return {\r\n status: '',\r\n token: '',\r\n realToken:'',\r\n expiration: '',\r\n me: null,\r\n currentMe:null,\r\n pwdForgot:false,\r\n realMe:null,\r\n mocking:false\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n isLoggedIn: state => !!state.token,\r\n authStatus: state => state.status,\r\n token: state => state.token,\r\n expiration:state => state.expiration,\r\n me: state => state.me,\r\n realRole: state => state.me?.roles[0],\r\n currentMe: state => state.currentMe,\r\n realMe: state => state.realMe,\r\n pwdForgot:state => state.pwdForgot,\r\n mocking:state => state.mocking\r\n },\r\n mutations,\r\n actions\r\n}","\r\n/**\r\n * \r\n * User Mutations\r\n */\r\n\r\n\r\n/**\r\n * Sto richiedendo dati relativi agli utenti\r\n * @param {*} state \r\n */ \r\nconst user_request=(state)=>{\r\n state.loading = true\r\n}\r\n/**\r\n * Ho ricevuto id dati degli utenti\r\n * @param {*} state \r\n * @param {*} data \r\n */\r\nconst users_success=(state, {data, pagination})=>{\r\n state.loading = false\r\n /* state.users = data\r\n state.pagination = pagination */\r\n\r\n const {CurrentPage} = pagination \r\n //prima navigazione\r\n if(!state.pagination){\r\n state.pagination = pagination\r\n state.users = data\r\n state.visitedPages.push(CurrentPage)\r\n } else {\r\n state.pagination = pagination\r\n ///se non ho mai visto la paginata -> aggiungo i nuovi dati\r\n if(!state.visitedPages.find(p => p===CurrentPage)){\r\n state.visitedPages.push(CurrentPage)\r\n data.forEach(u =>{\r\n state.users.push(u)\r\n }) \r\n\r\n }else{\r\n ////altrimenti eseguo l'update sulla porzione di store\r\n data.forEach((user, index) =>{\r\n const toReplace = state.users.find(u =>u.id === user.id)\r\n if(toReplace){\r\n Object.assign(toReplace, user)\r\n }else {\r\n state.users[index] = user\r\n }\r\n })\r\n }\r\n \r\n state.pagination = pagination\r\n }\r\n\r\n}\r\n/**\r\n * Errore nella richiesta dei dati\r\n * @param {*} state \r\n */\r\nconst users_error = (state)=>{\r\n state.loading = false\r\n \r\n}\r\n\r\nconst user_selected_role =(state, {role})=>{ \r\n state.currentRole = role\r\n}\r\n\r\nconst users_clear =(state)=>{\r\n state.users = []\r\n}\r\n\r\nconst empty_filter = (state, type)=>{\r\n const indx = state.activeFilters.findIndex(f => f.type === type)\r\n if(indx !== -1){\r\n state.activeFilters = state.activeFilters.filter(f => f.type !== type)\r\n }\r\n if(state.activeFilters.length ===0){\r\n state.filtered = null\r\n }\r\n \r\n}\r\nconst filter_request = (state, {type, value})=>{\r\n state.loading = true\r\n const indx = state.activeFilters.findIndex(f => f.type === type) \r\n const emptySearch = type === 'search' && value === ''\r\n const allRoles = type === 'roles' && value === 'Tutti'\r\n \r\n if(indx === -1){\r\n if(type === 'roles' && !allRoles){\r\n state.activeFilters.push({type:type, value:value})\r\n }\r\n if(type === 'search' && !emptySearch){\r\n state.activeFilters.push({type:type, value:value})\r\n } \r\n \r\n }else {\r\n if(type === 'search'){\r\n if(emptySearch){\r\n state.activeFilters = state.activeFilters.filter(f => f.type !== 'search')\r\n } else {\r\n state.activeFilters[indx]['value'] = value\r\n }\r\n }\r\n if(type === 'roles'){\r\n if(allRoles){\r\n state.activeFilters = state.activeFilters.filter(f => f.type !== 'roles')\r\n } else{\r\n state.activeFilters[indx]['value'] = value\r\n }\r\n }\r\n }\r\n}\r\nconst do_filter =(state, {data, pagination}) => {\r\n state.filtered = data\r\n state.pagination = pagination\r\n }\r\n const clear_filters =(state)=>{\r\n state.filtered=null\r\n state.activeFilters=[]\r\n }\r\nconst update_request=(state)=>{\r\n state.loading = true\r\n}\r\nconst update_success=(state, data)=>{\r\n state.loading = false\r\n const updated = state.users.find(user=> user.id===data.id)\r\n if(updated)\r\n Object.assign(updated, data)\r\n}\r\nconst update_error = (state)=>{\r\n \r\n state.loading = false\r\n \r\n}\r\n\r\nconst save_request=(state)=>{\r\n state.loading = true\r\n}\r\nconst save_success=(state, data)=>{\r\n state.loading = false\r\n state.users.unshift(data)\r\n}\r\nconst save_error = (state)=>{\r\n state.loading = false\r\n}\r\n\r\nconst remove_error =(state)=>{\r\n state.loading = false\r\n}\r\nconst remove_success =(state, user)=>{\r\n state.loading = false\r\n const users = state.users.filter(u => u.id !== user.id)\r\n state.users = users\r\n}\r\nconst savecolumnsizes = (state, sizes)=>{\r\n state.columnsSizes = sizes\r\n}\r\n\r\nconst upload_success = (state, {response})=>{\r\n \r\n state.loading = false\r\n const updated = state.users.find(user=> user.id===response.userId)\r\n if(updated){\r\n const avatar = updated.avatar\r\n if(avatar){\r\n \r\n avatar.id = response.id\r\n avatar.userId = response.userId\r\n }else{\r\n \r\n updated.avatar = {\r\n id:response.id,\r\n userId:response.userId\r\n }\r\n }\r\n }\r\n \r\n}\r\n\r\nconst do_sort =(state, {sorting}) => {\r\n \r\n switch(sorting.type){\r\n case 'Nome asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.userName.localeCompare(b.userName))\r\n }else{\r\n state.users = state.users.sort((a, b) => a.userName.localeCompare(b.userName))\r\n }\r\n \r\n break\r\n case 'Nome desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.userName.localeCompare(a.userName))\r\n }else{\r\n state.users = state.users.sort((a, b) => b.userName.localeCompare(a.userName))\r\n }\r\n break\r\n case 'data creazione asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }else{\r\n state.users = state.users.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }\r\n \r\n break\r\n case 'data creazione desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }else{\r\n state.users = state.users.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }\r\n break\r\n }\r\n \r\n}\r\n\r\nconst single_get_success = (state, {data})=>{\r\n const toReplace = state.users.find(u =>u.id === data.id) \r\n if(toReplace)\r\n Object.assign(toReplace, data);\r\n else {\r\n state.users.unshift(data)\r\n }\r\n}\r\n \r\nexport const mutations = {\r\n user_request,\r\n users_success,\r\n users_error,\r\n user_selected_role,\r\n users_clear,\r\n //user_edit,\r\n do_filter,\r\n do_sort,\r\n update_request,\r\n update_success,\r\n update_error,\r\n save_request,\r\n save_success,\r\n save_error,\r\n remove_error,\r\n remove_success,\r\n savecolumnsizes,\r\n upload_success,\r\n single_get_success,\r\n empty_filter,\r\n filter_request,\r\n clear_filters\r\n }","import { ApiEndPoints } from '../../api/Endpoints';\r\nimport { API } from '@/api/API';\r\nimport {useCapabilities} from '@/utils/Capabilities'\r\nimport { \r\n USER_ROLE_ADMIN, \r\n USER_ROLE_ADVERTISER,\r\n USER_ROLE_CONCESSIONAIRE_ADMIN,\r\n USER_ROLE_CONCESSIONAIRE_USER,\r\n USER_ROLE_PUBLISHER_ADMIN,\r\n USER_ROLE_PUBLISHER_USER ,\r\n USER_SCOPE_PUBLISHER_DISCRIMINATOR,\r\n USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR\r\n} from '@/utils/RolesAndPolicies';\r\n\r\n\r\n/**\r\n * Richiede la lista degli utenti\r\n */\r\nconst users = async({commit}, payload={})=>{\r\n commit('user_request')\r\n try {\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n \r\n const endpoint = usePublisherController ? \r\n ApiEndPoints.PUBLISHERS+`/user/`\r\n : ApiEndPoints.USERS\r\n \r\n const {data, headers} = await API.get(endpoint, payload) \r\n \r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('users_success' ,{ data, pagination })\r\n } catch (error) {\r\n commit('users_error')\r\n throw new Error(error.message)\r\n\r\n }\r\n}\r\n\r\n/**\r\n * Richiede la lista degli user-scopes\r\n */\r\nconst userScopes = async({commit},payload={})=>{\r\n commit('userscope_request')\r\n try {\r\n const {data, headers} = await API.get(ApiEndPoints.USER_SCOPE, payload)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('userscope_success' ,{ data, pagination })\r\n } catch (error) {\r\n commit('userscope_error')\r\n }\r\n}\r\n\r\n\r\n/**\r\n * Richiede il cambio di ruolo (x il mock)\r\n * funzionalità tutta da scrivere\r\n */\r\nconst changeUserRole = async ({ commit }, role) =>{\r\n commit('user_selected_role', role)\r\n commit('userscope/userscope_selected_role', role,{ root: true })\r\n //commit('user_selected_role', role)\r\n\r\n}\r\n\r\n/**\r\n * Filtra la lista degli utenti\r\n * \r\n */\r\nconst filter = async ({commit, state}, filter) =>{\r\n const params = {}\r\n const {type, value} = filter\r\n commit('filter_request', {type, value})\r\n const activeFilters = state.activeFilters\r\n if(activeFilters.length === 0){\r\n commit('empty_filter', type)\r\n try {\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n \r\n const endpoint = usePublisherController ? \r\n ApiEndPoints.PUBLISHERS+`/user/`\r\n : ApiEndPoints.USERS\r\n const {data, headers} = await API.get(endpoint, {})\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('users_success' ,{ data, pagination })\r\n return data\r\n } catch (error) {\r\n commit('users_error')\r\n throw new Error(error.message)\r\n }\r\n } else {\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n \r\n const endpoint = usePublisherController ? \r\n ApiEndPoints.PUBLISHERS+`/user/`\r\n : ApiEndPoints.USERS\r\n \r\n let url= endpoint , search, role\r\n switch (type) {\r\n case 'search':\r\n \r\n url = endpoint + '?' + type + '=' +value\r\n role = activeFilters.find(f => f.type === 'roles')\r\n if(role){\r\n if(role.value === USER_ROLE_ADMIN || role.value === USER_ROLE_ADVERTISER){\r\n url +='&roles='+role.value\r\n }else if(value === USER_SCOPE_PUBLISHER_DISCRIMINATOR){\r\n url +='&roles='+ USER_ROLE_PUBLISHER_ADMIN +'&roles='+ USER_ROLE_PUBLISHER_USER\r\n }else if(value === USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR){\r\n url +='&roles='+USER_ROLE_CONCESSIONAIRE_ADMIN+'&roles='+USER_ROLE_CONCESSIONAIRE_USER\r\n }\r\n } \r\n \r\n break;\r\n case 'roles':\r\n if(value === USER_ROLE_ADMIN || value === USER_ROLE_ADVERTISER){\r\n url = endpoint+'?roles='+value\r\n }else if(value === USER_SCOPE_PUBLISHER_DISCRIMINATOR){\r\n url = endpoint+'?roles='+USER_ROLE_PUBLISHER_ADMIN+'&roles='+USER_ROLE_PUBLISHER_USER\r\n }else if(value === USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR){\r\n url = endpoint+'?roles='+USER_ROLE_CONCESSIONAIRE_ADMIN+'&roles='+USER_ROLE_CONCESSIONAIRE_USER\r\n }\r\n search = activeFilters.find(f => f.type === 'search')\r\n if(search){\r\n if(value !== 'Tutti'){\r\n url += '&search='+search.value\r\n }else{\r\n url += '?search='+search.value\r\n }\r\n }\r\n \r\n break;\r\n \r\n default:\r\n break;\r\n }\r\n \r\n try {\r\n const {data, headers} = await API.get(url, params)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n \r\n commit('do_filter', {data, pagination,type})\r\n return data\r\n } catch (error) {\r\n commit('users_error')\r\n throw new Error(error.message)\r\n } \r\n }\r\n}\r\n \r\n\r\n\r\nconst sort = async ({commit}, sorting) =>{\r\n commit('do_sort', {sorting})\r\n}\r\n\r\n/**\r\n * Esegue l'update di un user\r\n */\r\nconst update = async ({commit},{id,data}) =>{\r\n commit('update_request')\r\n try {\r\n const response = await API.patch(ApiEndPoints.USERS+'/'+id, data)\r\n commit('update_success', response)\r\n } catch (error) {\r\n commit('update_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\n/**\r\n * Salva un nuovo utente\r\n */\r\nconst saveUser = async ({commit},{data}) =>{\r\n commit('save_request')\r\n try {\r\n const response = await API.post(ApiEndPoints.USERS, data)\r\n commit('save_success', response) \r\n return response\r\n } catch (error) {\r\n commit('users_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\n/**\r\n * Inizializza il giro per la creazione di un nuovo utente\r\n */\r\nconst createUser = async ({commit},user) =>{\r\n commit('user_newuser', user)\r\n}\r\n\r\nconst clearList = async ({commit}) =>{\r\n commit('users_clear')\r\n\r\n}\r\n\r\nconst remove = async({commit}, id)=>{\r\n commit('user_request')\r\n try {\r\n await API.delete(ApiEndPoints.USERS+'/'+ id )\r\n commit('remove_success' ,{id})\r\n \r\n } catch (error) {\r\n commit('remove_error')\r\n throw new Error(error.message)\r\n } \r\n}\r\n\r\nconst upload = async({commit},fileData)=>{\r\n \r\n commit('user_request')\r\n try {\r\n const formData = new FormData();\r\n formData.append('file', fileData.avatar)\r\n const response = await API.post(ApiEndPoints.USERS+'/'+ fileData.id +'/avatar', formData)\r\n commit('upload_success' ,{response})\r\n return response\r\n } catch (error) {\r\n commit('save_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst getSingle = async({commit}, id)=>{\r\n \r\n commit('user_request')\r\n try {\r\n\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n \r\n const endpoint = usePublisherController ? \r\n ApiEndPoints.PUBLISHERS+`/user/${id}`\r\n : ApiEndPoints.USERS+'/'+id\r\n\r\n const {data} = await API.get(endpoint)\r\n commit('single_get_success', {data}) \r\n return data\r\n } catch (error) {\r\n commit('save_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n \r\nexport const actions = {\r\n users,\r\n userScopes,\r\n changeUserRole,\r\n filter,\r\n sort,\r\n update,\r\n createUser,\r\n saveUser,\r\n getSingle,\r\n clearList,\r\n remove,\r\n upload\r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\nexport const userModule = {\r\n state () {\r\n return {\r\n //editing:false, \r\n users:[],\r\n currentRole:null,\r\n filtered:null,\r\n activeFilters:[],\r\n columnsSizes:null,\r\n pagination:null,\r\n visitedPages:[]\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n users: state => state.users,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination.CurrentPage\r\n const pageSize = state.pagination.PageSize\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.users.filter((tag, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n filtered:state=>state.filtered,\r\n activeFilters:state=>state.activeFilters,\r\n //editing:state=>state.editing,\r\n currentRole:state =>{\r\n return state.currentRole ? state.currentRole : state.selected.roles[0]\r\n },\r\n columnsSizes:state=>state.columnsSizes,\r\n pagination:state=>state.pagination,\r\n \r\n },\r\n mutations,\r\n actions\r\n}","\r\nexport const message_hide =(state)=>{\r\n state.show = false\r\n state.title=null\r\n state.message=null\r\n}\r\n\r\nexport const message_show = (state, {msg})=>{\r\n const {title, message} = msg\r\n state.show = true\r\n state.title = title\r\n state.message = message\r\n}\r\n\r\nexport const mutations = {\r\n message_show,\r\n message_hide\r\n}\r\n","const message = ({commit}, msg)=>{\r\n commit('message_show', {msg})\r\n}\r\nconst close = ({commit})=>{\r\n commit('message_hide')\r\n}\r\n\r\nexport const actions = {\r\n message,\r\n close\r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n\r\n\r\n\r\nexport const messagesModule = {\r\n state () {\r\n return {\r\n title: null,\r\n message: null,\r\n show:false\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n message: state => state.message,\r\n show: state => state.show,\r\n title: state => state.title\r\n\r\n },\r\n mutations,\r\n actions\r\n}","const request = (state)=>{\r\n state.loading = true\r\n }\r\n /**\r\n * \r\n * @param {*} state Object \r\n * @param {payload} Object contenente Array di campagne e Obj pagination\r\n * \r\n */\r\n const get_success = (state, {data, pagination})=>{\r\n state.loading = false\r\n const {CurrentPage} = pagination \r\n //prima navigazione\r\n if(!state.pagination){\r\n state.pagination = pagination\r\n state.campaigns = data\r\n state.visitedPages.push(CurrentPage)\r\n } else {\r\n ///se non ho mai visto la paginata -> aggiungo i nuovi dati\r\n if(!state.visitedPages.find(p => p===CurrentPage)){\r\n state.visitedPages.push(CurrentPage)\r\n state.campaigns = state.campaigns.concat(data)\r\n\r\n }else{\r\n ////altrimenti eseguo l'update sulla porzione di store\r\n data.forEach((campaign, indx) =>{\r\n const toReplace = state.campaigns.find(c =>c.id === campaign.id)\r\n if(toReplace){\r\n Object.assign(toReplace, campaign)\r\n }else {\r\n state.campaigns[indx] = campaign\r\n }\r\n })\r\n }\r\n state.pagination = pagination\r\n }\r\n\r\n }\r\n \r\n const get_error =(state)=>{\r\n state.loading = false\r\n state.campaigns = []\r\n }\r\n //campaigns_by_tag_success\r\n const by_tag_success = (state, {data}) =>{\r\n state.campaigns = data \r\n }\r\n \r\n const clear =(state)=>{\r\n state.campaigns = []\r\n state.filtered=null,\r\n state.columnsSizes=null,\r\n state.facebookPages=[],\r\n state.analyticsPages=[],\r\n state.pagination={\r\n CurrentPage:1,\r\n PageSize:20\r\n },\r\n state.single=null,\r\n state.visitedPages=[]\r\n }\r\n\r\n\r\n const save_request = (state)=>{\r\n state.loading = true\r\n }\r\n const save_error =(state)=>{\r\n state.loading = false\r\n }\r\n \r\n const save_success = (state, response)=>{\r\n state.loading = false\r\n state.campaigns.unshift(response)\r\n }\r\n const update_success = (state, response)=>{\r\n state.loading = false\r\n const updated = state.campaigns.find(c=> c.id===response.id)\r\n Object.assign(updated, response)\r\n }\r\n const remove_error =(state)=>{\r\n state.loading = false\r\n }\r\n const remove_success =(state, campaign)=>{\r\n state.loading = false\r\n const newCampaigns = state.campaigns.filter(c => c.id !== campaign.id)\r\n state.campaigns = newCampaigns\r\n }\r\n\r\n const tag_update_error=(state)=>{\r\n \r\n state.loading = false\r\n }\r\n const tag_update_success = (state, {id,storetags})=>{\r\n const campaign = state.campaigns.find(c => c.id === id)\r\n Object.assign(campaign.campaignTags, storetags);\r\n }\r\n\r\n\r\n const social_sync_success = (state, response) => {\r\n const campaign = state?.campaigns.find(c => c.id === response.campaignId)\r\n if(campaign.socialCampaigns){\r\n const social = campaign?.socialCampaigns.find(s => s.socialId === response.socialId) || {}\r\n Object.assign(social, response);\r\n } else {\r\n campaign.socialCampaigns = []\r\n campaign.socialCampaigns.push(response)\r\n }\r\n \r\n }\r\n const social_sync_error = (state) => {\r\n state.loading = false\r\n }\r\n\r\n const social_remove_success = (state, {campaignId, socialId}) => {\r\n const campaign = state?.campaigns.find(c => c.id === campaignId)\r\n if(campaign.socialCampaigns){\r\n campaign.socialCampaigns = campaign?.socialCampaigns.filter(s => s.socialId !== socialId) || []\r\n }\r\n \r\n }\r\n\r\n\r\n const savecolumnsizes = (state, sizes)=>{\r\n state.columnsSizes = sizes\r\n }\r\n\r\n const do_filter =(state, {data, pagination}) => {\r\n state.filtered = data\r\n state.pagination = pagination\r\n }\r\n const clear_filters =(state)=>{\r\n state.filtered=null\r\n state.activeFilters=[]\r\n }\r\n const do_sort =(state, {sorting}) => {\r\n \r\n switch(sorting.type){\r\n case 'Nome asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.title.localeCompare(b.title))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => a.title.localeCompare(b.title))\r\n }\r\n \r\n break\r\n case 'Nome desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.title.localeCompare(a.title))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => b.title.localeCompare(a.title))\r\n }\r\n break\r\n case 'Nome Advertiser asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.advertiserUser.userName.localeCompare(b.advertiserUser.userName))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => a.advertiserUser.userName.localeCompare(b.advertiserUser.userName))\r\n }\r\n \r\n break\r\n case 'Nome Advertiser desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.advertiserUser.userName.localeCompare(a.advertiserUser.userName))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => b.advertiserUser.userName.localeCompare(a.advertiserUser.userName))\r\n }\r\n break\r\n case 'data creazione asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }\r\n \r\n break\r\n case 'data creazione desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }else{\r\n state.campaigns = state.campaigns.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }\r\n break\r\n }\r\n \r\n }\r\n\r\n const single_get_success = (state, {data})=>{\r\n \r\n const toReplace = state.campaigns.find(c =>c.id === data.id) \r\n if(toReplace){\r\n Object.assign(toReplace, data)\r\n } else {\r\n state.campaigns.unshift(data)\r\n }\r\n state.single = data\r\n }\r\n const monetize_success = (state, campaign)=>{\r\n const toReplace = state.campaigns.find(c =>c.id === campaign.id) \r\n if(toReplace){\r\n Object.assign(toReplace, campaign);\r\n }\r\n \r\n }\r\n \r\n const social_campaign_authorized = (state, {socialId, campaignId, authorized})=>{\r\n const campaign = state.campaigns.find(c =>c.id === campaignId) \r\n if(campaign.socialCampaigns){\r\n const social = campaign.socialCampaigns.find(s=>s.socialId === socialId)\r\n social.authorized = authorized\r\n }\r\n \r\n }\r\n\r\n const social_campaign_accepted = (state, {socialId, campaignId, accepted})=>{\r\n\r\n \r\n const campaign = state.campaigns.find(c =>c.id === campaignId) \r\n if(campaign.socialCampaigns){\r\n const social = campaign.socialCampaigns.find(s=>s.socialId === socialId) \r\n social.accepted = accepted\r\n }\r\n \r\n \r\n }\r\n\r\n const approved_socials_success =(state,socials)=>{\r\n state.loading = false\r\n state.facebookPages = socials\r\n\r\n }\r\n const delete_event_success =(state)=>{\r\n state.loading = false\r\n \r\n\r\n }\r\n const delete_event_error =(state)=>{\r\n state.loading = false\r\n \r\n\r\n }\r\n\r\n const analytics_socials_success =(state,socials)=>{\r\n state.loading = false\r\n state.analyticsPages = socials\r\n\r\n }\r\n const analytics_socials_request =(state)=>{\r\n state.loading = true\r\n state.analyticsPages = []\r\n\r\n }\r\n\r\n const social_campaign_price_updated = (state/* , {socialId, campaignId, data} */) =>{\r\n state.loading = false\r\n \r\n\r\n }\r\n\r\n const publishdate_error =(state)=>{\r\n \r\n state.loading = false\r\n \r\n}\r\n\r\nconst publishdate_success = (state) => { \r\n state.loading = false\r\n}\r\n\r\nconst empty_filter = (state)=>{\r\n state.filtered = null\r\n}\r\n export const mutations = {\r\n request,\r\n get_success,\r\n get_error,\r\n by_tag_success,\r\n clear,\r\n save_request,\r\n save_error,\r\n save_success,\r\n update_success,\r\n tag_update_error,\r\n tag_update_success,\r\n remove_error,\r\n remove_success,\r\n savecolumnsizes,\r\n do_filter,\r\n do_sort,\r\n social_sync_success,\r\n social_sync_error,\r\n social_remove_success,\r\n single_get_success,\r\n social_campaign_authorized,\r\n social_campaign_accepted,\r\n monetize_success,\r\n approved_socials_success,\r\n social_campaign_price_updated,\r\n analytics_socials_success,\r\n analytics_socials_request,\r\n publishdate_error,\r\n publishdate_success,\r\n delete_event_success,\r\n delete_event_error,\r\n empty_filter,\r\n clear_filters\r\n }\r\n ","import { API } from \"@/api/API\";\r\nimport { ApiEndPoints } from \"@/api/Endpoints\";\r\nimport { useCapabilities } from \"@/utils/Capabilities\";\r\n\r\nconst index = async ({ commit }, payload) => {\r\n commit(\"request\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/campaign\"\r\n : ApiEndPoints.CAMPAIGNS;\r\n const { data, headers } = await API.get(endpoint, payload);\r\n //const {data, headers} = await API.get(ApiEndPoints.CAMPAIGNS,payload)\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"get_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"get_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst bytag = async ({ commit }, { tags }) => {\r\n commit(\"request\");\r\n const map = tags.map((t) => \"tag=\" + t.id);\r\n\r\n const query = map.length > 1 ? map.join(\"&\") : map.join(\"\");\r\n\r\n try {\r\n const { data } = await API.get(ApiEndPoints.CAMPAIGNS + \"/?\" + query);\r\n commit(\"by_tag_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst clearList = async ({ commit }) => {\r\n commit(\"clear\");\r\n};\r\n\r\n/**\r\n * Salva un nuovo utente\r\n */\r\nconst create = async ({ commit }, { data }) => {\r\n commit(\"save_request\");\r\n try {\r\n const response = await API.post(ApiEndPoints.CAMPAIGNS, data);\r\n commit(\"save_success\", response);\r\n return response;\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst syncTags = async ({ commit }, { id, tags }) => {\r\n commit(\"request\");\r\n const storetags = tags.map((t) => t);\r\n const query = tags.map((t) => \"tags=\" + t.tagId).join(\"&\");\r\n try {\r\n await API.get(ApiEndPoints.CAMPAIGNS + \"/\" + id + \"/tags?\" + query);\r\n commit(\"tag_update_success\", { id, storetags });\r\n return tags;\r\n } catch (error) {\r\n commit(\"tag_update_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst addSocial = async ({ commit }, { campaignId, socialId }) => {\r\n commit(\"request\");\r\n\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS +\r\n `/social-campaign/social/${socialId}/campaign/${campaignId}`\r\n : ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n `/social/${socialId}/campaign/${campaignId}`;\r\n const response = await API.post(endpoint, {});\r\n //const response = await API.post(ApiEndPoints.SOCIAL_CAMPAIGNS+`/social/${socialId}/campaign/${campaignId}`, {})\r\n\r\n commit(\"social_sync_success\", response);\r\n return response;\r\n } catch (error) {\r\n commit(\"social_sync_error\", error);\r\n throw new Error(error.message);\r\n }\r\n};\r\nconst removeSocial = async ({ commit }, { campaignId, socialId }) => {\r\n commit(\"request\");\r\n\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS +\r\n `/social-campaign/social/${socialId}/campaign/${campaignId}`\r\n : ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n `/social/${socialId}/campaign/${campaignId}`;\r\n\r\n await API.delete(endpoint, {});\r\n //await API.delete(ApiEndPoints.SOCIAL_CAMPAIGNS+`/social/${socialId}/campaign/${campaignId}`, {})\r\n\r\n commit(\"social_remove_success\", { campaignId, socialId });\r\n return { campaignId, socialId };\r\n } catch (error) {\r\n commit(\"social_sync_error\", error);\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst remove = async ({ commit }, id) => {\r\n commit(\"request\");\r\n try {\r\n await API.delete(ApiEndPoints.CAMPAIGNS + \"/\" + id);\r\n commit(\"remove_success\", { id });\r\n } catch (error) {\r\n commit(\"remove_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst update = async (\r\n { commit },\r\n { id, data, socialCampaigns, postCampaigns, campaignTags }\r\n) => {\r\n commit(\"save_request\");\r\n try {\r\n const response = await API.put(ApiEndPoints.CAMPAIGNS + \"/\" + id, data);\r\n commit(\"update_success\", {\r\n ...response,\r\n socialCampaigns: socialCampaigns,\r\n postCampaigns: postCampaigns,\r\n campaignTags: campaignTags,\r\n });\r\n return data;\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst filter = async ({ commit }, filter) => {\r\n commit(\"request\");\r\n const params = {};\r\n\r\n if (filter.value !== \"\") {\r\n params[filter.type] = filter.value;\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + `/campaign`\r\n : ApiEndPoints.CAMPAIGNS;\r\n\r\n const { data, headers } = await API.get(endpoint, params);\r\n //const {data, headers} = await API.get(ApiEndPoints.CAMPAIGNS, params)\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"do_filter\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"get_error\");\r\n throw new Error(error.message);\r\n }\r\n } else {\r\n commit(\"empty_filter\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + `/campaign`\r\n : ApiEndPoints.CAMPAIGNS;\r\n const { data, headers } = await API.get(endpoint, {});\r\n //const {data, headers} = await API.get(ApiEndPoints.CAMPAIGNS, {})\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"get_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"get_error\");\r\n throw new Error(error.message);\r\n }\r\n }\r\n};\r\n\r\nconst sort = async ({ commit }, sorting) => {\r\n commit(\"do_sort\", { sorting });\r\n};\r\n\r\nconst getSingle = async ({ commit }, id) => {\r\n commit(\"request\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + `/campaign/${id}`\r\n : ApiEndPoints.CAMPAIGNS + \"/\" + id;\r\n\r\n const { data } = await API.get(endpoint);\r\n //const {data} = await API.get(ApiEndPoints.CAMPAIGNS+'/'+id)\r\n commit(\"single_get_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst authorize = async ({ commit }, data) => {\r\n commit(\"request\");\r\n try {\r\n await API.patch(\r\n ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n \"/social/\" +\r\n data.socialId +\r\n \"/campaign/\" +\r\n data.campaignId +\r\n \"/authorize\",\r\n { authorized: data.authorized }\r\n );\r\n commit(\"social_campaign_authorized\", data);\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\nconst accept = async ({ commit }, data) => {\r\n commit(\"request\");\r\n try {\r\n await API.patch(\r\n ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n \"/social/\" +\r\n data.socialId +\r\n \"/campaign/\" +\r\n data.campaignId +\r\n \"/accept\",\r\n {\r\n accepted: data.accepted,\r\n }\r\n );\r\n commit(\"social_campaign_accepted\", data);\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst monetize = async ({ commit }, id) => {\r\n commit(\"request\");\r\n try {\r\n const { data } = await API.get(\r\n ApiEndPoints.CAMPAIGNS + \"/\" + id + \"/monetize\"\r\n );\r\n commit(\"monetize_success\", data);\r\n } catch (error) {\r\n commit(\"save_error\");\r\n\r\n const socialId = error.message.split(\"|\")[1];\r\n const socialName = error.message.split(\"|\")[2];\r\n if (socialId) {\r\n commit(\r\n \"reset/facebook_reset_oauth\",\r\n { socialId, socialName },\r\n { root: true }\r\n );\r\n }\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst getApprovedSocialsForCampaign = async ({ commit }, id) => {\r\n commit(\"request\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social-campaign\"\r\n : ApiEndPoints.SOCIAL_CAMPAIGNS;\r\n const { data } = await API.get(endpoint + \"/campaign/\" + id + \"/socials\");\r\n\r\n //const {data} = await API.get(ApiEndPoints.SOCIAL_CAMPAIGNS+'/campaign/'+id + '/socials')\r\n commit(\"approved_socials_success\", data);\r\n return data;\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst updateSocialPrices = async (\r\n { commit },\r\n { socialId, campaignId, data }\r\n) => {\r\n commit(\"request\");\r\n try {\r\n await API.patch(\r\n ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n \"/social/\" +\r\n socialId +\r\n \"/campaign/\" +\r\n campaignId,\r\n data\r\n );\r\n commit(\"social_campaign_price_updated\", { socialId, campaignId, data });\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst getAnalyticsForCampaign = async ({ commit }, id) => {\r\n commit(\"analytics_socials_request\");\r\n const { isAdvertiser, isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n let endpoint = ApiEndPoints.SOCIAL_CAMPAIGNS + \"/campaign/\" + id + \"/socials\";\r\n if (usePublisherController) {\r\n endpoint =\r\n ApiEndPoints.PUBLISHERS + \"/social-campaign/campaign/\" + id + \"/socials\";\r\n } else {\r\n if (isAdvertiser()) {\r\n endpoint += \"/analytics\";\r\n }\r\n }\r\n\r\n try {\r\n const { data } = await API.get(endpoint);\r\n commit(\"analytics_socials_success\", data);\r\n return data;\r\n } catch (error) {\r\n commit(\"save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\nconst publishDate = async ({ commit }, payload) => {\r\n commit(\"request\");\r\n try {\r\n ///api/social-campaign/social/{socialId}/campaign/{campaignId}/event\r\n const data = await API.post(\r\n ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n \"/social/\" +\r\n payload.sharedExtendedProperties.socialId +\r\n \"/campaign/\" +\r\n payload.sharedExtendedProperties.campaignId +\r\n \"/event\",\r\n payload\r\n );\r\n commit(\"publishdate_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"publishdate_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst deleteEvent = async ({ commit }, payload) => {\r\n commit(\"request\");\r\n try {\r\n const { data } = await API.delete(\r\n ApiEndPoints.SOCIAL_CAMPAIGNS +\r\n `/social/${payload.socialId}/campaign/${payload.campaignId}/event/${payload.id}`\r\n );\r\n commit(\"delete_event_success\");\r\n return data;\r\n } catch (error) {\r\n commit(\"delete_event_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nexport const actions = {\r\n index,\r\n bytag,\r\n clearList,\r\n syncTags,\r\n create,\r\n remove,\r\n update,\r\n filter,\r\n sort,\r\n addSocial,\r\n removeSocial,\r\n getSingle,\r\n authorize,\r\n monetize,\r\n accept,\r\n getApprovedSocialsForCampaign,\r\n updateSocialPrices,\r\n getAnalyticsForCampaign,\r\n publishDate,\r\n deleteEvent,\r\n};\r\n","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n\r\n\r\nexport const campaignsModule = {\r\n state () {\r\n return {\r\n campaigns:[],\r\n filtered:null,\r\n columnsSizes:null,\r\n facebookPages:[],\r\n analyticsPages:[],\r\n pagination:null,\r\n single:null,\r\n visitedPages:[]\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n campaigns: state => state.campaigns,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination.CurrentPage\r\n const pageSize = state.pagination.PageSize\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.campaigns.filter((campaign, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n columnsSizes:state=>state.columnsSizes,\r\n filtered:state=>state.filtered,\r\n facebookPages:state=>state.facebookPages,\r\n analyticsPages:state=>state.analyticsPages,\r\n pagination:state=>state.pagination,\r\n single:state => state.single\r\n },\r\n mutations,\r\n actions\r\n}","const social_request = (state) => {\r\n state.loading = true;\r\n};\r\nconst social_success = (state, { data, pagination }) => {\r\n state.loading = false;\r\n\r\n const { CurrentPage } = pagination;\r\n //prima navigazione\r\n if (!state.pagination) {\r\n state.pagination = pagination;\r\n state.social = data;\r\n state.visitedPages.push(CurrentPage);\r\n } else {\r\n state.pagination = pagination;\r\n ///se non ho mai visto la paginata -> aggiungo i nuovi dati\r\n\r\n if (!state.visitedPages.find((p) => p === CurrentPage)) {\r\n state.visitedPages.push(CurrentPage);\r\n data.forEach((s /* , indx */) => {\r\n if (!state.social.find((so) => so.socialId === s.socialId)) {\r\n state.social.push(s);\r\n }\r\n });\r\n } else {\r\n ////altrimenti eseguo l'update sulla porzione di store e lascio il resto invariato\r\n\r\n data.forEach((s, indx) => {\r\n const toReplace = state.social.find((so) => so.socialId === s.socialId);\r\n if (toReplace) {\r\n Object.assign(toReplace, s);\r\n } else {\r\n state.social[indx] = s;\r\n }\r\n });\r\n }\r\n\r\n state.pagination = pagination;\r\n }\r\n};\r\nconst social_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst fb_request = (state) => {\r\n state.loading = true;\r\n};\r\nconst fb_success = (state, { data, pagination }) => {\r\n state.loading = false;\r\n state.social = data;\r\n state.pagination = pagination;\r\n};\r\nconst fb_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst social_selected = (state, { social }) => {\r\n state.selected = social;\r\n};\r\nconst social_save_request = (state) => {\r\n state.loading = true;\r\n};\r\nconst social_save_success = (state, data) => {\r\n state.loading = false;\r\n state.social.unshift(data);\r\n};\r\nconst social_save_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst social_by_tag_success = (state, { data }) => {\r\n state.social = data;\r\n};\r\nconst social_clear = (state) => {\r\n state.social = [];\r\n};\r\n\r\nconst filter_request = (state, { type, value }) => {\r\n state.loading = true;\r\n const indx = state.activeFilters.findIndex((f) => f.type === type);\r\n const emptySearch = type === \"search\" && value === \"\";\r\n const allRoles = type === \"discriminator\" && value === \"Tutti\";\r\n if (indx === -1) {\r\n if (type === \"discriminator\" && !allRoles) {\r\n state.activeFilters.push({ type: type, value: value });\r\n }\r\n if (type === \"search\" && !emptySearch) {\r\n state.activeFilters.push({ type: type, value: value });\r\n }\r\n } else {\r\n if (type === \"search\") {\r\n if (emptySearch) {\r\n state.activeFilters = state.activeFilters.filter(\r\n (f) => f.type !== \"search\"\r\n );\r\n } else {\r\n state.activeFilters[indx][\"value\"] = value;\r\n }\r\n }\r\n if (type === \"discriminator\") {\r\n if (allRoles) {\r\n state.activeFilters = state.activeFilters.filter(\r\n (f) => f.type !== \"discriminator\"\r\n );\r\n } else {\r\n state.activeFilters[indx][\"value\"] = value;\r\n }\r\n }\r\n }\r\n};\r\nconst do_filter = (state, { data, pagination }) => {\r\n state.filtered = data;\r\n state.pagination = pagination;\r\n};\r\nconst empty_filter = (state, type) => {\r\n const indx = state.activeFilters.findIndex((f) => f.type === type);\r\n if (indx !== -1) {\r\n state.activeFilters = state.activeFilters.filter((f) => f.type !== type);\r\n }\r\n if (state.activeFilters.length === 0) {\r\n state.filtered = null;\r\n }\r\n};\r\nconst clear_filters = (state) => {\r\n state.filtered = null;\r\n state.activeFilters = [];\r\n state.visitedPages = [];\r\n};\r\n\r\nconst do_sort = (state, { sorting }) => {\r\n switch (sorting.type) {\r\n case \"Nome asc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n a.name.localeCompare(b.name)\r\n );\r\n } else {\r\n state.social = state.social.sort((a, b) =>\r\n a.name.localeCompare(b.name)\r\n );\r\n }\r\n break;\r\n case \"Nome desc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n b.name.localeCompare(a.name)\r\n );\r\n } else {\r\n state.social = state.social.sort((a, b) =>\r\n b.name.localeCompare(a.name)\r\n );\r\n }\r\n break;\r\n case \"data creazione asc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n a.createdAt.localeCompare(b.createdAt)\r\n );\r\n } else {\r\n state.social = state.social.sort((a, b) =>\r\n a.createdAt.localeCompare(b.createdAt)\r\n );\r\n }\r\n break;\r\n case \"data creazione desc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n b.createdAt.localeCompare(a.createdAt)\r\n );\r\n } else {\r\n state.social = state.social.sort((a, b) =>\r\n b.createdAt.localeCompare(a.createdAt)\r\n );\r\n }\r\n break;\r\n }\r\n};\r\n\r\nconst social_edit = (state, { editing }) => {\r\n state.editing = editing;\r\n};\r\n\r\nconst social_tag_update_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst social_fetch_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst social_tag_update_success = (state) => {\r\n state.loading = false;\r\n};\r\nconst social_fetch_success = (state, { data }) => {\r\n const social = state.social.find((s) => s.socialId === data.socialId);\r\n Object.assign(social, data);\r\n};\r\n\r\nconst fb_reset_token_success = (state) => {\r\n state.loading = false;\r\n};\r\n\r\nconst fb_refresh_token_success = (state) => {\r\n state.loading = false;\r\n};\r\n\r\nconst fb_get_pages_success = (state) => {\r\n state.loading = false;\r\n};\r\n\r\nconst remove_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst remove_success = (state, social) => {\r\n state.loading = false;\r\n const newSocials = state.social.filter((s) => s.socialId !== social.id);\r\n state.social = newSocials;\r\n};\r\nconst update_success = (state, { response }) => {\r\n state.loading = false;\r\n const updated = state.social.find(\r\n (social) => social.socialId === response.socialId\r\n );\r\n if (updated) {\r\n Object.assign(updated, response);\r\n }\r\n\r\n state.selected = response;\r\n};\r\nconst savecolumnsizes = (state, sizes) => {\r\n state.columnsSizes = sizes;\r\n};\r\nconst single_get_success = (state, { data }) => {\r\n const toReplace = state.social.find((s) => s.id === data.id);\r\n if (toReplace) {\r\n Object.assign(toReplace, data);\r\n }\r\n};\r\n\r\nexport const mutations = {\r\n social_request,\r\n social_success,\r\n social_error,\r\n fb_request,\r\n fb_success,\r\n fb_error,\r\n social_selected,\r\n social_save_request,\r\n social_save_success,\r\n social_save_error,\r\n social_by_tag_success,\r\n social_clear,\r\n do_filter,\r\n filter_request,\r\n do_sort,\r\n social_edit,\r\n social_tag_update_error,\r\n social_tag_update_success,\r\n social_fetch_success,\r\n social_fetch_error,\r\n remove_error,\r\n remove_success,\r\n update_success,\r\n savecolumnsizes,\r\n single_get_success,\r\n fb_reset_token_success,\r\n fb_refresh_token_success,\r\n fb_get_pages_success,\r\n empty_filter,\r\n clear_filters,\r\n};\r\n","import { API } from \"@/api/API\";\r\nimport { ApiEndPoints } from \"@/api/Endpoints\";\r\nimport { useCapabilities } from \"@/utils/Capabilities\";\r\n\r\nconst facebookList = async ({ commit }) => {\r\n commit(\"fb_request\");\r\n try {\r\n //const response = await axios({url: ApiEndPoints.SOCIAL_FB, method: 'GET' })\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social/facebook\"\r\n : ApiEndPoints.SOCIAL_FB;\r\n const { data, headers } = await API.get(endpoint);\r\n // const {data, headers} = await API.get(ApiEndPoints.SOCIAL_FB)\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n //const {data} = response\r\n commit(\"fb_success\", { data, pagination });\r\n } catch (error) {\r\n commit(\"fb_error\");\r\n }\r\n};\r\n\r\nconst list = async ({ commit }, payload = {}) => {\r\n commit(\"social_request\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social/facebook\"\r\n : ApiEndPoints.SOCIAL;\r\n const { data, headers } = await API.get(endpoint, payload);\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"social_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_error\");\r\n }\r\n};\r\n\r\nconst bytag = async ({ commit }, { tags, discriminator }) => {\r\n const map = tags.map((t) => \"tag=\" + t.id);\r\n const query =\r\n (map.length > 1 ? map.join(\"&\") : map.join(\"\")) +\r\n \"&discriminator=\" +\r\n discriminator;\r\n commit(\"social_request\");\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social\"\r\n : ApiEndPoints.SOCIAL;\r\n\r\n //const {data} = await API.get(ApiEndPoints.SOCIAL+'/?'+query)\r\n const { data } = await API.get(endpoint + \"/?\" + query);\r\n commit(\"social_by_tag_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_error\");\r\n }\r\n};\r\n\r\nconst clearList = async ({ commit }) => {\r\n commit(\"social_clear\");\r\n};\r\n\r\nconst filter = async ({ commit, state }, filter) => {\r\n const params = {};\r\n const { type, value } = filter;\r\n commit(\"filter_request\", { type, value });\r\n const activeFilters = state.activeFilters;\r\n if (activeFilters.length === 0) {\r\n commit(\"empty_filter\", type);\r\n try {\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social\"\r\n : ApiEndPoints.SOCIAL;\r\n\r\n const { data, headers } = await API.get(endpoint, {});\r\n //const {data, headers} = await API.get(ApiEndPoints.SOCIAL, {})\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"social_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_error\");\r\n throw new Error(error.message);\r\n }\r\n } else {\r\n let url, search, discriminator;\r\n const { isPublisher, isConcessionaire } = useCapabilities();\r\n const usePublisherController = isPublisher() || isConcessionaire();\r\n const endpoint = usePublisherController\r\n ? ApiEndPoints.PUBLISHERS + \"/social\"\r\n : ApiEndPoints.SOCIAL;\r\n\r\n switch (type) {\r\n case \"search\":\r\n url = endpoint + \"?\" + type + \"=\" + value;\r\n discriminator = activeFilters.find((f) => f.type === \"discriminator\");\r\n if (discriminator) {\r\n url += \"&discriminator=\" + discriminator.value;\r\n }\r\n\r\n break;\r\n case \"discriminator\":\r\n if (value === \"Tutti\") {\r\n url = endpoint;\r\n search = activeFilters.find((f) => f.type === \"search\");\r\n if (search) {\r\n url += \"?search=\" + search.value;\r\n }\r\n } else {\r\n url = endpoint + \"?\" + type + \"=\" + value;\r\n search = activeFilters.find((f) => f.type === \"search\");\r\n if (search) {\r\n url += \"&search=\" + search.value;\r\n }\r\n }\r\n\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n try {\r\n const { data, headers } = await API.get(url, params);\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"do_filter\", { data, pagination, type });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_error\");\r\n throw new Error(error.message);\r\n }\r\n }\r\n};\r\n\r\nconst sort = async ({ commit }, sorting) => {\r\n commit(\"do_sort\", { sorting });\r\n};\r\n\r\nconst updateSocialTags = async ({ commit }, { id, tags }) => {\r\n commit(\"social_request\");\r\n const query = tags.map((t) => \"tags=\" + t.id).join(\"&\");\r\n try {\r\n const { data } = await API.get(\r\n ApiEndPoints.SOCIAL + \"/\" + id + \"/tags?\" + query\r\n );\r\n commit(\"social_tag_update_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_tag_update_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst fetchfacebook = async ({ commit }, { id }) => {\r\n commit(\"social_request\");\r\n try {\r\n const data = await API.put(ApiEndPoints.SOCIAL_FB + \"/\" + id);\r\n commit(\"social_fetch_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_fetch_error\");\r\n const socialId = error.message.split(\"|\")[1];\r\n if (socialId) {\r\n commit(\"reset/facebook_reset_oauth\", socialId, { root: true });\r\n }\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst update = async ({ commit }, { id, data }) => {\r\n commit(\"social_save_request\");\r\n try {\r\n const response = await API.patch(ApiEndPoints.SOCIAL_FB + \"/\" + id, data);\r\n\r\n commit(\"update_success\", { response });\r\n return response;\r\n } catch (error) {\r\n commit(\"social_save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst remove = async ({ commit }, { id, discriminator }) => {\r\n const endpoint =\r\n discriminator === \"Facebook\"\r\n ? ApiEndPoints.SOCIAL_FB\r\n : ApiEndPoints.SOCIAL_IG;\r\n commit(\"social_request\");\r\n try {\r\n await API.delete(endpoint + \"/\" + id);\r\n commit(\"remove_success\", { id });\r\n } catch (error) {\r\n commit(\"remove_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst create = async ({ commit }, { data }) => {\r\n commit(\"social_save_request\");\r\n try {\r\n const response = await API.post(ApiEndPoints.SOCIAL_FB, data);\r\n commit(\"social_save_success\", response);\r\n return response;\r\n } catch (error) {\r\n commit(\"social_save_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst getSingleFb = async ({ commit }, id) => {\r\n commit(\"social_request\");\r\n try {\r\n const { data } = await API.get(ApiEndPoints.SOCIAL_FB + \"/\" + id);\r\n commit(\"single_get_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"social_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst resetFacebookTokens = async ({ commit }, token) => {\r\n commit(\"social_request\");\r\n\r\n try {\r\n await API.get(\r\n ApiEndPoints.SOCIAL_FB + \"/accounts/accessToken/\" + token + \"/reset\"\r\n );\r\n commit(\"fb_reset_token_success\");\r\n } catch (error) {\r\n commit(\"fb_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst refreshFacebookTokens = async ({ commit }) => {\r\n commit(\"social_request\");\r\n try {\r\n await API.post(ApiEndPoints.SOCIAL_FB + \"/accounts/accessToken/refresh\");\r\n commit(\"fb_refresh_token_success\");\r\n } catch (error) {\r\n commit(\"fb_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst getFacebookPages = async ({ commit }, filter_existing_pages = false) => {\r\n commit(\"social_request\");\r\n try {\r\n const endpoint = filter_existing_pages\r\n ? ApiEndPoints.SOCIAL_FB + \"/accounts/filtered\"\r\n : ApiEndPoints.SOCIAL_FB + \"/accounts\";\r\n const response = await API.get(endpoint);\r\n const pages = response.data;\r\n commit(\"fb_get_pages_success\");\r\n return pages;\r\n } catch (error) {\r\n commit(\"fb_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nexport const actions = {\r\n list,\r\n facebookList,\r\n bytag,\r\n clearList,\r\n create,\r\n filter,\r\n sort,\r\n updateSocialTags,\r\n fetchfacebook,\r\n update,\r\n remove,\r\n getSingleFb,\r\n resetFacebookTokens,\r\n refreshFacebookTokens,\r\n getFacebookPages,\r\n};\r\n","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n\r\n\r\n\r\nexport const socialModule = {\r\n state () {\r\n return {\r\n social:[], \r\n facebook:[],\r\n instagram:[],\r\n editing:false, \r\n filtered:null,\r\n activeFilters:[],\r\n columnsSizes:null,\r\n pagination:null,\r\n visitedPages:[]\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n social:state =>state.social,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination?.CurrentPage || 1\r\n const pageSize = state.pagination?.PageSize || 20\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.social.filter((tag, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n facebook: state => state.social.filter(s =>s.discriminator==='Facebook'),\r\n instagram: state => state.social.filter(s =>s.discriminator==='Instagram'),\r\n editing:state=>state.editing,\r\n filtered:state=>state.filtered,\r\n activeFilters:state=>state.activeFilters,\r\n columnsSizes:state=>state.columnsSizes,\r\n pagination:state=>state.pagination\r\n },\r\n mutations,\r\n actions\r\n}","/**\r\n * Mutations\r\n */\r\n\r\nconst tags_request = (state) => (state.loading = true);\r\n\r\nconst tags_success = (state, { data, pagination }) => {\r\n state.loading = false;\r\n const { CurrentPage } = pagination;\r\n //prima navigazione\r\n if (!state.pagination) {\r\n state.pagination = pagination;\r\n state.tags = data;\r\n state.visitedPages.push(CurrentPage);\r\n } else {\r\n state.pagination = pagination;\r\n ///se non ho mai visto la paginata -> aggiungo i nuovi dati\r\n if (!state.visitedPages.find((p) => p === CurrentPage)) {\r\n state.visitedPages.push(CurrentPage);\r\n data.forEach((t) => {\r\n state.tags.push(t);\r\n });\r\n } else {\r\n ////altrimenti eseguo l'update sulla porzione di store\r\n data.forEach((tag, index) => {\r\n const toReplace = state.tags.find((t) => t.id === tag.id);\r\n if (toReplace) {\r\n Object.assign(toReplace, tag);\r\n } else {\r\n state.tags[index] = tag;\r\n }\r\n });\r\n }\r\n\r\n state.pagination = pagination;\r\n }\r\n};\r\nconst tag_single_success = (state, { data }) => {\r\n state.loading = false;\r\n if (!state.tags.find((t) => t.id === data.id)) state.tags.unshift(data);\r\n state.current = data;\r\n};\r\nconst tags_error = (state) => {\r\n state.loading = false;\r\n};\r\n\r\nconst tags_save_success = (state, { data }) => {\r\n state.loading = false;\r\n state.tags.unshift(data);\r\n};\r\n\r\nconst tags_clear = (state) => {\r\n state.tags = [];\r\n};\r\n\r\nconst remove_error = (state) => {\r\n state.loading = false;\r\n};\r\nconst remove_success = (state, tag) => {\r\n state.loading = false;\r\n const newTags = state.tags.filter((c) => c.id !== tag.id);\r\n state.tags = newTags;\r\n};\r\n\r\nconst do_filter = (state, { data, pagination }) => {\r\n state.filtered = data;\r\n state.pagination = pagination;\r\n};\r\n\r\nconst empty_filter = (state) => {\r\n state.filtered = null;\r\n};\r\nconst clear_filters = (state) => {\r\n state.filtered = null;\r\n state.activeFilters = [];\r\n};\r\n\r\nconst do_sort = (state, { sorting }) => {\r\n switch (sorting.type) {\r\n case \"Nome asc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n a.name.localeCompare(b.name)\r\n );\r\n } else {\r\n state.tags = state.tags.sort((a, b) => a.name.localeCompare(b.name));\r\n }\r\n\r\n break;\r\n case \"Nome desc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n b.name.localeCompare(a.name)\r\n );\r\n } else {\r\n state.tags = state.tags.sort((a, b) => b.name.localeCompare(a.name));\r\n }\r\n break;\r\n case \"data creazione asc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n a.id.localeCompare(b.id)\r\n );\r\n } else {\r\n state.tags = state.tags.sort((a, b) => a.id < b.id);\r\n }\r\n\r\n break;\r\n case \"data creazione desc\":\r\n if (state.filtered) {\r\n state.filtered = state.filtered.sort((a, b) =>\r\n b.id.localeCompare(a.id)\r\n );\r\n } else {\r\n state.tags = state.tags.sort((a, b) => a.id >= b.id);\r\n }\r\n break;\r\n }\r\n};\r\n\r\nconst tags_update_success = (state, { tag }) => {\r\n console.log(state, tag);\r\n state.loading = false;\r\n const updated = state.tags.find((c) => c.id === tag.id);\r\n\r\n // TODO toppa, assolutamente da risolvere!!! A quanto pare lo stato è legato al pagination. Nello stato ci sono solo i tag della pagina 1, se l'elemento non è in pagina 1, siamo fottuti.\r\n if (!updated) {\r\n console.error(`Tag con ID ${tag.id} non trovato nello stato.`);\r\n return;\r\n }\r\n\r\n Object.assign(updated, tag);\r\n};\r\nconst savecolumnsizes = (state, sizes) => {\r\n state.columnsSizes = sizes;\r\n};\r\nexport const mutations = {\r\n tags_request,\r\n tags_success,\r\n tags_error,\r\n tags_save_success,\r\n tags_clear,\r\n remove_error,\r\n remove_success,\r\n do_filter,\r\n do_sort,\r\n tags_update_success,\r\n savecolumnsizes,\r\n tag_single_success,\r\n empty_filter,\r\n clear_filters,\r\n};\r\n","import { ApiEndPoints } from \"../../api/Endpoints\";\r\nimport { API } from \"@/api/API\";\r\n\r\nconst getTags = async ({ commit }, payload = {}) => {\r\n commit(\"tags_request\");\r\n try {\r\n const { data, headers } = await API.get(ApiEndPoints.TAGS, payload);\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"tags_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\nconst getSingleTag = async ({ commit }, id) => {\r\n commit(\"tags_request\");\r\n try {\r\n const { data /* , headers */ } = await API.get(\r\n ApiEndPoints.TAGS + \"/\" + id\r\n );\r\n //const pagination = JSON.parse(headers['x-pagination'])\r\n commit(\"tag_single_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst createTag = async ({ commit }, { tagName }) => {\r\n commit(\"tags_request\");\r\n try {\r\n const data = await API.post(ApiEndPoints.TAGS, { name: tagName.value });\r\n commit(\"tags_save_success\", { data });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\nconst clearList = async ({ commit }) => {\r\n commit(\"tags_clear\");\r\n};\r\n\r\nconst remove = async ({ commit }, id) => {\r\n commit(\"tags_request\");\r\n try {\r\n await API.delete(ApiEndPoints.TAGS + \"/\" + id);\r\n commit(\"remove_success\", { id });\r\n } catch (error) {\r\n commit(\"remove_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nconst filter = async ({ commit }, filter) => {\r\n commit(\"tags_request\");\r\n const params = {};\r\n\r\n if (filter.value !== \"\") {\r\n params[filter.type] = filter.value;\r\n try {\r\n const { data, headers } = await API.get(ApiEndPoints.TAGS, params);\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n //commit('tags_success' ,{ data, pagination })\r\n commit(\"do_filter\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n } else {\r\n commit(\"empty_filter\");\r\n try {\r\n const { data, headers } = await API.get(ApiEndPoints.TAGS, {});\r\n const pagination = JSON.parse(headers[\"x-pagination\"]);\r\n commit(\"tags_success\", { data, pagination });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n }\r\n};\r\nconst sort = async ({ commit }, sorting) => {\r\n commit(\"do_sort\", { sorting });\r\n};\r\n\r\nconst update = async ({ commit }, tag) => {\r\n commit(\"tags_request\");\r\n try {\r\n const data = await API.put(ApiEndPoints.TAGS + \"/\" + tag.id, {\r\n name: tag.name,\r\n id: tag.id,\r\n description: tag.description,\r\n });\r\n commit(\"tags_update_success\", { tag });\r\n return data;\r\n } catch (error) {\r\n commit(\"tags_error\");\r\n throw new Error(error.message);\r\n }\r\n};\r\n\r\nexport const actions = {\r\n getTags,\r\n createTag,\r\n clearList,\r\n remove,\r\n filter,\r\n sort,\r\n update,\r\n getSingleTag,\r\n};\r\n","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n/**\r\n * Module\r\n */\r\n\r\nexport const tagsModule = {\r\n state () {\r\n return {\r\n tags:[],\r\n filtered:null,\r\n columnsSizes:null,\r\n pagination:null,\r\n current:null,\r\n visitedPages:[]\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n tags: state => state.tags,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination.CurrentPage\r\n const pageSize = state.pagination.PageSize\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.tags.filter((tag, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n loading: state => state.loading,\r\n filtered:state=>state.filtered,\r\n columnsSizes:state=>state.columnsSizes,\r\n pagination:state=>state.pagination,\r\n current:state=>state.current,\r\n },\r\n mutations,\r\n actions\r\n}","/**\r\n * UserScope\r\n * \r\n */\r\n\r\nconst userscope_request=(state)=>{\r\n state.loading = true\r\n}\r\nconst userscope_success=(state, {data, pagination})=>{\r\n state.loading = false\r\n //state.userScopes = data\r\n //state.pagination = pagination\r\n const {CurrentPage} = pagination \r\n //prima navigazione\r\n if(!state.pagination){\r\n state.pagination = pagination\r\n state.userScopes = data\r\n state.visitedPages.push(CurrentPage)\r\n } else {\r\n state.pagination = pagination\r\n ///se non ho mai visto la paginata -> aggiungo i nuovi dati\r\n if(!state.visitedPages.find(p => p===CurrentPage)){\r\n state.visitedPages.push(CurrentPage)\r\n data.forEach(t =>{\r\n state.userScopes.push(t)\r\n }) \r\n\r\n }else{\r\n ////altrimenti eseguo l'update sulla porzione di store\r\n data.forEach((tag, indx) =>{\r\n const toReplace = state.userScopes.find(t =>t.id === tag.id)\r\n if(toReplace){\r\n Object.assign(toReplace, tag)\r\n } else{\r\n state.userScopes[indx] = tag\r\n }\r\n })\r\n }\r\n \r\n state.pagination = pagination\r\n }\r\n}\r\nconst userscope_error = (state)=>{\r\n state.loading = false\r\n //state.userScopes = []\r\n}\r\n\r\nconst userscope_save_request=(state)=>{\r\n state.loading = true\r\n}\r\nconst update_request=(state)=>{\r\n state.loading = true\r\n}\r\nconst update_success=(state, {data})=>{\r\n \r\n state.loading = false\r\n const scope = state.userScopes.find(s => s.id === data.id)\r\n Object.assign(scope, data);\r\n}\r\nconst userscope_save_success=(state, data)=>{\r\n \r\n state.loading = false\r\n state.userScopes.unshift(data)\r\n state.creating = false\r\n}\r\nconst userscope_save_error = (state)=>{\r\n state.loading = false\r\n state.creating = false\r\n}\r\n\r\nconst userscope_selected_role = (state, {role, discriminator}) =>{\r\n switch(role){\r\n case 'Superuser':\r\n case 'Admin':\r\n case 'Advertiser':\r\n state.available = null\r\n break;\r\n case 'ConcessionaireAdmin':\r\n case 'ConcessionaireUser':\r\n case 'PublisherAdmin':\r\n case 'PublisherUser':\r\n state.available = state.userScopes.filter(scope => scope.discriminator === discriminator)\r\n break \r\n }\r\n}\r\n\r\nconst filter_request = (state, {type, value})=>{\r\n state.loading = true\r\n const indx = state.activeFilters.findIndex(f => f.type === type) \r\n const emptySearch = type === 'search' && value === ''\r\n const allRoles = type === 'discriminator' && value === 'Tutti'\r\n \r\n if(indx === -1){\r\n if(type === 'discriminator' && !allRoles){\r\n state.activeFilters.push({type:type, value:value})\r\n }\r\n if(type === 'search' && !emptySearch){\r\n state.activeFilters.push({type:type, value:value})\r\n } \r\n \r\n }else {\r\n if(type === 'search'){\r\n if(emptySearch){\r\n state.activeFilters = state.activeFilters.filter(f => f.type !== 'search')\r\n } else {\r\n state.activeFilters[indx]['value'] = value\r\n }\r\n }\r\n if(type === 'discriminator'){\r\n \r\n if(allRoles){\r\n \r\n state.activeFilters = state.activeFilters.filter(f => f.type !== 'discriminator')\r\n \r\n } else{\r\n state.activeFilters[indx]['value'] = value\r\n }\r\n }\r\n }\r\n}\r\nconst do_filter =(state, {data, pagination}) => {\r\n state.filtered = data\r\n state.pagination = pagination\r\n}\r\nconst empty_filter = (state, type)=>{\r\n const indx = state.activeFilters.findIndex(f => f.type === type)\r\n if(indx !== -1){\r\n state.activeFilters = state.activeFilters.filter(f => f.type !== type)\r\n }\r\n if(state.activeFilters.length ===0){\r\n state.filtered = null\r\n }\r\n}\r\nconst clear_filters =(state)=>{\r\n state.filtered=null\r\n state.activeFilters=[]\r\n}\r\n\r\nconst do_sort =(state, {sorting}) => {\r\n switch(sorting.type){\r\n case 'Nome asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.name.localeCompare(b.name))\r\n }else{\r\n state.userScopes = state.userScopes.sort((a, b) => a.name.localeCompare(b.name))\r\n }\r\n \r\n break\r\n case 'Nome desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.name.localeCompare(a.name))\r\n }else{\r\n state.userScopes = state.userScopes.sort((a, b) => b.name.localeCompare(a.name))\r\n }\r\n break\r\n case 'data creazione asc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }else{\r\n state.userScopes = state.userScopes.sort((a, b) => a.createdAt.localeCompare(b.createdAt))\r\n }\r\n \r\n break\r\n case 'data creazione desc':\r\n if(state.filtered){\r\n state.filtered = state.filtered.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }else{\r\n state.userScopes = state.userScopes.sort((a, b) => b.createdAt.localeCompare(a.createdAt))\r\n }\r\n break\r\n }\r\n \r\n}\r\n\r\nconst userscope_clear =(state)=>{\r\n state.userScopes = []\r\n}\r\n\r\nconst remove_error =(state)=>{\r\n state.loading = false\r\n}\r\nconst remove_success =(state, userScope)=>{\r\n \r\n state.loading = false\r\n const userScopes = state.userScopes.filter(u => u.id !== userScope.id)\r\n state.userScopes = userScopes\r\n}\r\n\r\nconst savecolumnsizes = (state, sizes)=>{\r\n state.columnsSizes = sizes\r\n}\r\n\r\nconst upload_success = (state, {response})=>{\r\n state.loading = false\r\n const updated = state.userScopes.find(scope=> scope.id===response.userScopeId)\r\n if(updated.logo){\r\n updated.logo.id = response.id\r\n updated.logo.userScopeId = response.userScopeId\r\n }else{\r\n updated.logo = {\r\n id:response.id,\r\n userScopeId:response.userId\r\n }\r\n }\r\n}\r\n\r\nconst single_get_success = (state, {data})=>{\r\n const toReplace = state.userScopes.find(us =>us.id === data.id) \r\n Object.assign(toReplace, data);\r\n}\r\n\r\nexport const mutations = {\r\n userscope_request,\r\n userscope_success,\r\n userscope_error,\r\n userscope_selected_role,\r\n userscope_save_request,\r\n userscope_save_success,\r\n userscope_save_error,\r\n do_filter,\r\n do_sort,\r\n userscope_clear,\r\n update_request,\r\n update_success,\r\n remove_error,\r\n remove_success,\r\n savecolumnsizes,\r\n upload_success,\r\n single_get_success,\r\n empty_filter,\r\n filter_request,\r\n clear_filters\r\n} ","import { ApiEndPoints } from '../../api/Endpoints';\r\nimport { API } from '@/api/API';\r\n\r\n/**\r\n * Richiede la lista degli user-scopes\r\n */\r\nconst userScopes = async({commit}, payload)=>{\r\n commit('userscope_request')\r\n try {\r\n const {data, headers} = await API.get(ApiEndPoints.USER_SCOPE, payload)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('userscope_success' ,{ data, pagination })\r\n } catch (error) {\r\n commit('userscope_error')\r\n }\r\n}\r\n\r\nconst createUserScope = async({commit}, scope)=>{\r\n commit('userscope_request')\r\n const {name, discriminator, concessionaireId} = scope\r\n const data = {\r\n name:name.value, \r\n discriminator:discriminator\r\n }\r\n if(concessionaireId){\r\n data.concessionaireId = concessionaireId\r\n }\r\n try {\r\n const response = await API.post(ApiEndPoints.USER_SCOPE, data)\r\n commit('userscope_save_success', response) \r\n return response\r\n } catch (error) {\r\n commit('userscope_save_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst filter = async ({commit, state}, filter) =>{\r\n const params = {}\r\n const {type, value} = filter\r\n commit('filter_request',{type, value})\r\n const activeFilters = state.activeFilters\r\n if(activeFilters.length === 0){\r\n commit('empty_filter', type)\r\n try {\r\n const {data, headers} = await API.get(ApiEndPoints.USER_SCOPE, {})\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('userscope_success' ,{ data, pagination })\r\n return data\r\n } catch (error) {\r\n commit('userscope_error')\r\n throw new Error(error.message)\r\n }\r\n \r\n } else {\r\n let url , search, discriminator\r\n switch (type) {\r\n case 'search':\r\n url = ApiEndPoints.USER_SCOPE + '?' + type + '=' +value\r\n discriminator = activeFilters.find(f => f.type === 'discriminator')\r\n if(discriminator){\r\n url +='&discriminator='+discriminator.value\r\n } \r\n break;\r\n case 'discriminator':\r\n search = activeFilters.find(f => f.type === 'search')\r\n if(value !== 'Tutti'){\r\n url = ApiEndPoints.USER_SCOPE + '?' + type + '=' +value\r\n discriminator = value\r\n if(search){\r\n url += '&search='+search.value\r\n }\r\n } else {\r\n if(search){\r\n url = ApiEndPoints.USER_SCOPE + '?search='+search.value\r\n } else {\r\n url = ApiEndPoints.USER_SCOPE\r\n }\r\n \r\n }\r\n \r\n \r\n \r\n break;\r\n default:\r\n break;\r\n }\r\n try {\r\n const {data, headers} = await API.get(url, params)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('do_filter', {data, pagination})\r\n return data\r\n } catch (error) {\r\n commit('social_error')\r\n throw new Error(error.message)\r\n } \r\n }\r\n \r\n \r\n}\r\n\r\n\r\nconst sort = async ({commit}, sorting) =>{\r\n commit('do_sort', {sorting})\r\n}\r\nconst clearList = async ({commit}) =>{\r\n commit('userscope_clear')\r\n\r\n}\r\n\r\nconst update = async({commit},{id,data})=>{\r\n commit('update_request')\r\n try {\r\n await API.put(ApiEndPoints.USER_SCOPE+'/'+id, data)\r\n commit('update_success', {data}) \r\n return data\r\n } catch (error) {\r\n commit('userscope_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\n\r\nconst remove = async({commit}, id)=>{\r\n commit('userscope_request')\r\n try {\r\n await API.delete(ApiEndPoints.USER_SCOPE+'/'+ id )\r\n commit('remove_success' ,{id})\r\n \r\n } catch (error) {\r\n commit('remove_error')\r\n throw new Error(error.message)\r\n } \r\n}\r\n\r\nconst upload = async({commit},fileData)=>{\r\n commit('userscope_request')\r\n try {\r\n const formData = new FormData();\r\n formData.append('file', fileData.logo)\r\n const response = await API.post(ApiEndPoints.USER_SCOPE+'/'+ fileData.id +'/logo', formData)\r\n commit('upload_success' ,{response})\r\n return response\r\n } catch (error) {\r\n commit('userscope_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst getSingle = async({commit}, id)=>{\r\n \r\n commit('userscope_request')\r\n try {\r\n //const userScope = await API.get(ApiEndPoints.USER_SCOPE+'/'+id)\r\n const {data} = await API.get(ApiEndPoints.USER_SCOPE+'/'+id)\r\n commit('single_get_success', {data}) \r\n return data\r\n } catch (error) {\r\n commit('save_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nexport const actions = {\r\n userScopes,\r\n createUserScope,\r\n filter,\r\n clearList,\r\n update,\r\n remove,\r\n sort,\r\n upload,\r\n getSingle\r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\nexport const userScopeModule = {\r\n state () {\r\n return {\r\n editing:false, \r\n userScopes:[],\r\n available:null,\r\n filtered:null,\r\n columnsSizes:null,\r\n pagination:null,\r\n visitedPages:[],\r\n activeFilters:[],\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n scopes: state => state.userScopes,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination.CurrentPage\r\n const pageSize = state.pagination.PageSize\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.userScopes.filter((tag, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n editing:state=>state.editing,\r\n available:state=>state.available,\r\n filtered:state=>state.filtered,\r\n activeFilters:state=>state.activeFilters,\r\n concessionaires:state=>state.userScopes.filter(s=>s.discriminator === 'Concessionaire'),\r\n publishers:state=>state.userScopes.filter(s=>s.discriminator === 'Publisher'),\r\n columnsSizes:state=>state.columnsSizes,\r\n pagination:state=>state.pagination\r\n },\r\n mutations,\r\n actions\r\n}","const request = (state)=>{\r\n state.loading = true\r\n}\r\nconst get_success = (state, {data})=>{\r\n state.loading = false\r\n state.posts = data\r\n}\r\nconst get_error =(state)=>{\r\n state.loading = false\r\n state.posts = []\r\n}\r\nconst facebook_error =(state)=>{\r\n state.loading = false\r\n state.searchResult = []\r\n}\r\n\r\nconst facebook_search_success=(state, {data})=>{\r\n \r\n state.loading = false\r\n state.searchResult = data\r\n}\r\nconst facebook_assign_success=(state, response)=>{\r\n \r\n state.loading = false\r\n state.posts.unshift(response)\r\n\r\n //state.searchResult = data\r\n}\r\nconst facebook_advert_create_success= (state, response)=>{\r\n state.loading = false\r\n state.adverts.unshift(response)\r\n}\r\nconst facebook_advert_post_assign_success= (state, response)=>{\r\n state.loading = false\r\n state.adverts.unshift(response)\r\n}\r\n\r\nconst remove_error =(state)=>{\r\n state.loading = false\r\n }\r\n const remove_success =(state, {postId})=>{\r\n state.loading = false\r\n const newPosts = state.posts.filter(p => p.postId !== postId)\r\n state.posts = newPosts\r\n }\r\n const remove_success_advert =(state, {id})=>{\r\n state.loading = false\r\n const newAdverts = state.adverts.filter(a => a.id !== id)\r\n state.adverts = newAdverts\r\n }\r\n\r\nexport const mutations = {\r\n request,\r\n get_success,\r\n get_error,\r\n facebook_search_success,\r\n facebook_error,\r\n \r\n facebook_assign_success,\r\n remove_error,\r\n remove_success,\r\n facebook_advert_create_success,\r\n facebook_advert_post_assign_success,\r\n remove_success_advert\r\n}","import { API } from '@/api/API';\r\nimport { ApiEndPoints } from '@/api/Endpoints'\r\nimport {useCapabilities} from '@/utils/Capabilities'\r\n//import axios from 'axios'\r\n//import jQuery from 'jQuery'\r\n\r\nconst index = async({commit})=>{\r\n commit('request')\r\n try {\r\n const {data} = await API.get(ApiEndPoints.POST_FB)\r\n commit('get_success' ,{ data })\r\n return data\r\n } catch (error) {\r\n commit('get_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst facebookSearch = async({commit},payload)=>{\r\n const {socialId,data} = payload\r\n const params = data ? data : {}\r\n commit('request')\r\n try {\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n const endpoint = usePublisherController ? ApiEndPoints.PUBLISHERS+'/social/facebook' : ApiEndPoints.POST_FB\r\n const response = await API.post(endpoint+'/'+ socialId+'/search', params)\r\n commit('facebook_search_success', response) \r\n return response\r\n } catch (error) {\r\n commit('facebook_error')\r\n if(error.message.startsWith('Invalid OAuth access token.') || error.message.startsWith('(#200) Provide valid app ID') ) {\r\n const socialName = error.message.split('|')[2]\r\n commit('reset/facebook_reset_oauth', {socialId, socialName},{ root: true })\r\n }\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst facebookAssignPost = async({commit},data)=>{\r\n commit('request')\r\n try {\r\n \r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n const endpoint = usePublisherController ? ApiEndPoints.PUBLISHERS+'/post/facebook' : ApiEndPoints.POST_FB\r\n \r\n const response = await API.post(endpoint, data) \r\n commit('facebook_assign_success', response) \r\n return response\r\n } catch (error) {\r\n \r\n commit('facebook_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst removeFacebookPost = async({commit}, postId)=>{\r\n commit('request')\r\n try {\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n const endpoint = usePublisherController ? ApiEndPoints.PUBLISHERS+'/post/facebook' : ApiEndPoints.POST_FB\r\n await API.delete(endpoint+'/'+ postId )\r\n //await API.delete(ApiEndPoints.POST_FB+'/'+ postId )\r\n commit('remove_success' ,{postId})\r\n \r\n } catch (error) {\r\n commit('remove_error')\r\n throw new Error(error.message)\r\n } \r\n}\r\n\r\nconst createFacebookAdvertisment = async({commit},payload)=>{\r\n commit('request')\r\n try {\r\n const response = await API.post(ApiEndPoints.POST_FB_ADVERT, payload)\r\n commit('facebook_advert_create_success', response) \r\n return response\r\n } catch (error) {\r\n commit('facebook_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst insertFacebookAdvPost = async({commit},payload)=>{\r\n //alert('post')\r\n //alert(payload.postId)\r\n\r\n\r\n //const response2 = await API.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n // alert(response2.toString())\r\n //alert('ciao') \r\n\r\n // const a = axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n // .then(response2 => alert(response2.toString()))\r\n\r\n/*\r\n // create a promise for the axios request\r\n const promise = axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n\r\n // using .then, create a new promise which extracts the data\r\n const dataPromise = promise.then((response) =>{ alert(response.data)})\r\n\r\n //alert(dataPromise.toString())\r\n console.log(dataPromise);\r\n // alert(JSON.parse(dataPromise));\r\n\r\n */\r\n \r\n\r\n \r\n\r\n\r\n /*\r\n const { data } = await axios({\r\n url:\r\n \"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\",\r\n method: \"get\",\r\n });\r\n console.log(\"response from fb request\", data);*/\r\n \r\n\r\n/*\r\n axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n .then(response => {\r\n alert(\"Source of Anime Qoutes: \\n\\n\\n\" + JSON.parse(response.data));\r\n });\r\n */\r\n \r\n\r\n \r\n\r\n/*\r\n axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n .then(response => {\r\n console.log('success');\r\n console.log(response);\r\n })\r\n .catch(err => {\r\n console.log(err.response.data.error.message);\r\n var st = err.response.data.error.message;\r\n alert(err.response.data.error.message);\r\n var ind1 = st.indexOf(\"_\")\r\n var ind2 = st.indexOf(\"'\",ind1)\r\n var substr = st.substring(ind1+1 , ind2);\r\n alert(substr)\r\n postrotto(substr)\r\n //console.log(err.status);\r\n //console.log(err.response.status)\r\n });\r\n\r\nfunction postrotto(substr){\r\naxios.get(\"https://graph.facebook.com/v17.0/Repubblica?access_token=EAAWZAuERZCpeQBACG5Fl5rXcWrGMEMPhW68a8b1g9HucTwc3BRZBtzyLOD5m85dRs5qWiLnPzNZCl93inqcuAiHa9UXAs4noPduuivNMsLaZAuALS6IfS9ZA2ZAam8yf9hjmdmsbOpMbG8vicECoT49U61GMZCpGq1MgdOUYzlJdXgZDZD\")\r\n .then(response => {\r\n console.log('success');\r\n console.log(response);\r\n alert(response.data.id)\r\n alert(payload.postId);\r\n payload.postId = response.data.id+\"_\"+substr;\r\n alert(payload.postId);\r\n\r\n\r\n \r\n \r\n\r\n })\r\n .catch(err => {\r\n console.log(err.response.data.error.message);\r\n \r\n //alert(err.response.data.error.message);\r\n\r\n \r\n \r\n //console.log(err.status);\r\n //console.log(err.response.status)\r\n });\r\n\r\n }\r\n \r\n*/\r\n //axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\").then(response => {\r\n // var results = response.data\r\n // alert(results.toString())\r\n // alert('ciao')\r\n // results.forEach(function(entry) {\r\n // alert(entry);\r\n // });\r\n // })\r\n \r\n commit('request')\r\n \r\n try {\r\n\r\n //axios.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n //.then(response2 => alert(response2))\r\n \r\n\r\n //const response2 = await API.get(\"https://graph.facebook.com/v17.0/Repubblica_pfbid0bC6MetsAr958vtg9Hb7eZJr4vjUgEnEJizs61n17GaBUk4CWv1ru2eswPDzTkA7ul\")\r\n //alert(response2.toString())\r\n //alert('ciao') \r\n\r\n\r\n\r\n\r\n \r\n const response = await API.post(ApiEndPoints.POST_FB_ADVERT+'/'+ payload.facebookAdId+'/advertisement', payload)\r\n commit('facebook_advert_post_assign_success', response) \r\n return response\r\n } catch (error) {\r\n commit('facebook_error')\r\n if(error.message.startsWith('Invalid OAuth access token.') || error.message.startsWith('(#200) Provide valid app ID')) {\r\n commit('reset/facebook_reset_oauth', payload.socialId,{ root: true })\r\n }\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst removeFacebookAdvertisment = async({commit}, id)=>{ \r\n commit('request')\r\n try {\r\n await API.delete(ApiEndPoints.POST_FB_ADVERT+'/'+ id )\r\n commit('remove_success_advert' ,{id})\r\n \r\n } catch (error) {\r\n commit('remove_error')\r\n throw new Error(error.message)\r\n } \r\n}\r\n\r\n\r\nexport const actions = {\r\n index,\r\n facebookSearch,\r\n facebookAssignPost,\r\n removeFacebookPost,\r\n createFacebookAdvertisment,\r\n removeFacebookAdvertisment,\r\n insertFacebookAdvPost\r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n\r\n\r\nexport const postModule = {\r\n state () {\r\n return {\r\n posts:[],\r\n adverts:[],\r\n searchResult:[],\r\n filtered:null,\r\n columnsSizes:null\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n adverts: state => state.adverts,\r\n posts: state => state.posts,\r\n columnsSizes:state=>state.columnsSizes,\r\n filtered:state=>state.filtered,\r\n searchResult:state=>state.searchResult\r\n },\r\n mutations,\r\n actions\r\n}","import {diffDates} from '@/utils/DateTimeUtils';\r\n\r\nconst request = (state)=>{\r\n state.loading = true\r\n}\r\nconst get_success = (state, {data})=>{\r\n state.loading = false\r\n //state.events = data\r\n state.events = data.items.map(item => {\r\n\r\n const startDate = new Date(item.start.dateTime)\r\n const endDate = new Date(item.end.dateTime)\r\n const isAllDay = diffDates(startDate, endDate)\r\n return {\r\n id:item.id,\r\n start: startDate,\r\n end:endDate ,\r\n title: item.summary || 'no description',\r\n allDay:isAllDay,\r\n extendedProperties:item.extendedProperties\r\n }\r\n } )\r\n state.loadcount ++\r\n \r\n}\r\nconst get_error =(state)=>{\r\n state.loading = false\r\n state.events = []\r\n}\r\n\r\nconst publishdate_error =(state)=>{\r\n console.log('pub date error')\r\n state.loading = false\r\n \r\n}\r\n\r\nconst publishdate_success = (state) => { \r\n state.loading = false\r\n}\r\nconst delete_success = (state) => {\r\n state.loading = false\r\n \r\n}\r\n\r\nexport const mutations = {\r\n request,\r\n get_success,\r\n get_error,\r\n publishdate_success,\r\n publishdate_error,\r\n delete_success \r\n}","import { API } from '@/api/API';\r\nimport { ApiEndPoints } from '@/api/Endpoints'\r\n\r\n\r\nconst index = async({commit})=>{\r\n commit('request')\r\n try {\r\n const {data} = await API.get(ApiEndPoints.GOOGLE_CALENDAR)\r\n commit('get_success' ,{ data })\r\n return data\r\n } catch (error) {\r\n commit('get_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\nconst queryDates = async({commit},params)=>{\r\n \r\n commit('request')\r\n try {\r\n const {data} = await API.get(ApiEndPoints.GOOGLE_CALENDAR, params)\r\n commit('get_success' ,{ data })\r\n return data\r\n } catch (error) {\r\n commit('get_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst publishDate = async({commit}, payload)=>{\r\n commit('request')\r\n try {\r\n const data = await API.post(ApiEndPoints.GOOGLE_CALENDAR, payload)\r\n commit('publishdate_success' ,{ data })\r\n return data\r\n } catch (error) {\r\n commit('publishdate_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nconst deleteEvent = async({commit}, {id}) => {\r\n commit('request')\r\n try {\r\n const data = await API.delete(ApiEndPoints.GOOGLE_CALENDAR+'/' + id)\r\n commit('delete_success' )\r\n return data\r\n } catch (error) {\r\n commit('get_error')\r\n throw new Error(error.message)\r\n }\r\n}\r\n\r\nexport const actions = {\r\n index,\r\n publishDate,\r\n deleteEvent,\r\n queryDates\r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n/**\r\n * Module\r\n */\r\n\r\nexport const calendarModule = {\r\n state () {\r\n return {\r\n events:[],\r\n loadcount:0,\r\n loading:false\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n events: state => state.events,\r\n loading: state => state.loading,\r\n loadcount: state => state.loadcount,\r\n },\r\n mutations,\r\n actions\r\n}","const request = (state)=>{\r\n state.loading = true\r\n }\r\nconst proposed_success = (state, {data, pagination})=>{\r\n state.loading = false\r\n state.pagination = pagination\r\n state.proposed = data\r\n }\r\n const get_error =(state)=>{\r\n state.loading = false\r\n state.proposed = []\r\n }\r\n export const mutations = {\r\n proposed_success,\r\n request,\r\n get_error\r\n }","import { API } from '@/api/API';\r\nimport { ApiEndPoints } from '@/api/Endpoints'\r\n\r\nconst proposed = async({commit}) => {\r\n \r\n commit('request')\r\n try {\r\n const {data, headers} = await API.get(ApiEndPoints.SOCIAL_CAMPAIGNS+'/proposed')\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n commit('proposed_success', {data, pagination}) \r\n } catch (error) {\r\n commit('get_error')\r\n console.log(error)\r\n throw new Error(error.message)\r\n }\r\n }\r\n\r\n export const actions = {\r\n proposed\r\n }","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\n\r\n\r\nexport const socialCampaignsModule = {\r\n state () {\r\n return {\r\n proposed:[],\r\n pagination:null,\r\n single:null,\r\n visitedPages:[]\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n proposed: state => state.proposed,\r\n paged: state => {\r\n\r\n const currentPage = state.pagination.CurrentPage\r\n const pageSize = state.pagination.PageSize\r\n const offset = (currentPage * pageSize) - pageSize\r\n return state.proposed.filter((campaign, index) => (index >= offset && index <= offset + pageSize -1))\r\n },\r\n pagination:state=>state.pagination\r\n },\r\n mutations,\r\n actions\r\n}","\r\nconst facebook_reset_oauth = (state, {socialId, socialName}) => {\r\n state.resettingFacebook = true\r\n state.resettingFacebookId = socialId\r\n state.resettingFacebookName = socialName\r\n}\r\nconst facebook_reset_oauth_close = (state) => {\r\n state.resettingFacebook = false\r\n state.resettingFacebookId = null\r\n state.resettingFacebookName = null\r\n}\r\nexport const mutations = {\r\n facebook_reset_oauth,\r\n facebook_reset_oauth_close\r\n}","export const actions = {\r\n \r\n}","import { mutations } from './mutations';\r\nimport { actions } from './actions';\r\n\r\nexport const resetModule = {\r\n state () {\r\n return {\r\n resettingFacebook: false,\r\n resettingFacebookId:null,\r\n resettingFacebookName:null\r\n }\r\n },\r\n namespaced: true,\r\n getters: {\r\n resettingFacebook: state => !!state.resettingFacebook,\r\n resettingFacebookId: state => state.resettingFacebookId,\r\n resettingFacebookName: state => state.resettingFacebookName\r\n },\r\n mutations,\r\n actions\r\n}","export const quotesModule = {\r\n state: () => ({\r\n quotes: [],\r\n }),\r\n mutations: {\r\n setQuotes(state, quotes) {\r\n state.quotes = quotes;\r\n },\r\n addQuote(state, quote) {\r\n state.quotes.push(quote);\r\n },\r\n // Aggiungi altre mutations qui se necessario\r\n },\r\n actions: {\r\n // eslint-disable-next-line no-unused-vars\r\n fetchQuotes({ commit }) {\r\n // Qui dovresti fare una chiamata API per ottenere i preventivi\r\n // e poi chiamare la mutation setQuotes\r\n },\r\n // eslint-disable-next-line no-unused-vars\r\n createQuote({ commit }, quote) {\r\n // Qui dovresti fare una chiamata API per creare un preventivo\r\n // e poi chiamare la mutation addQuote\r\n },\r\n // Aggiungi altre actions qui se necessario\r\n },\r\n getters: {\r\n quotes: (state) => state.quotes,\r\n // Aggiungi altri getters qui se necessario\r\n },\r\n};\r\n","import { createStore } from \"vuex\";\r\nimport createPersistedState from \"vuex-persistedstate\";\r\nimport { authModule } from \"./auth/index\";\r\nimport { userModule } from \"./user/index\";\r\nimport { messagesModule } from \"./messages/index\";\r\nimport { campaignsModule } from \"./campaigns/index\";\r\nimport { socialModule } from \"./social/index\";\r\nimport { tagsModule } from \"./tags/index\";\r\nimport { userScopeModule } from \"./userscope/index\";\r\nimport { postModule } from \"./post/index\";\r\nimport { calendarModule } from \"./calendar/index\";\r\nimport { socialCampaignsModule } from \"./socialcampaigns/index\";\r\nimport { resetModule } from \"./reset/index\";\r\nimport { quotesModule } from \"./quotes/index\";\r\n\r\nconst persist = createPersistedState({\r\n //paths: ['auth', 'user', 'userscope','messages', 'campaigns', 'social']\r\n paths: [\"auth\"],\r\n});\r\n\r\nexport const store = createStore({\r\n modules: {\r\n auth: authModule,\r\n reset: resetModule,\r\n user: userModule,\r\n userscope: userScopeModule,\r\n messages: messagesModule,\r\n campaigns: campaignsModule,\r\n social: socialModule,\r\n tags: tagsModule,\r\n post: postModule,\r\n calendar: calendarModule,\r\n socialcampaigns: socialCampaignsModule,\r\n quotes: quotesModule,\r\n },\r\n plugins: [persist],\r\n});\r\n","/**\r\n * Bus per una gestione centralizzata degli eventi\r\n */\r\nconst EventsHandler = {\r\n events: {},\r\n publish: function (name, data) {\r\n const handlers = this.events[name]\r\n if (!!handlers === false) return\r\n handlers.forEach(function (handler) {\r\n if (typeof handler === 'function') { handler.call(this, data) }\r\n })\r\n },\r\n subscribe: function (name, handler) {\r\n let handlers = this.events[name]\r\n if (!!handlers === false) {\r\n handlers = this.events[name] = []\r\n }\r\n handlers.push(handler)\r\n },\r\n unsubscribe: function (name, handler) {\r\n if (this.events[name] !== undefined) {\r\n const handlerIdx = this.events[name].indexOf(handler)\r\n this.events[name].splice(handlerIdx, 1)\r\n }\r\n }\r\n}\r\nexport { EventsHandler }\r\n","import axios from \"axios\";\r\n\r\nexport const API = {\r\n get: async (url, params = {}) => {\r\n try {\r\n const response = await axios({ url: url, method: \"GET\", params: params });\r\n const { data, headers } = response;\r\n return { data, headers };\r\n } catch (error) {\r\n if (error?.response?.data.code === 190) {\r\n throw new Error(error?.response?.data.code);\r\n } else {\r\n const msg = handleErrorMessage(error);\r\n throw new Error(msg);\r\n }\r\n }\r\n },\r\n\r\n post: async (url, postData) => {\r\n try {\r\n const response = await axios({\r\n url: url,\r\n data: postData,\r\n method: \"POST\",\r\n });\r\n\r\n const { data } = response;\r\n\r\n return data;\r\n } catch (error) {\r\n if (error?.response?.data.code === 190) {\r\n throw new Error(error?.response?.data.code);\r\n } else {\r\n const msg = handleErrorMessage(error);\r\n throw new Error(msg);\r\n }\r\n }\r\n },\r\n put: async (url, postData) => {\r\n try {\r\n const response = await axios({ url: url, data: postData, method: \"PUT\" });\r\n const { data } = response;\r\n return data;\r\n } catch (error) {\r\n const msg = handleErrorMessage(error);\r\n throw new Error(msg);\r\n }\r\n },\r\n patch: async (url, postData) => {\r\n try {\r\n const response = await axios({\r\n url: url,\r\n data: postData,\r\n method: \"PATCH\",\r\n });\r\n const { data } = response;\r\n return data;\r\n } catch (error) {\r\n const msg = handleErrorMessage(error);\r\n throw new Error(msg);\r\n }\r\n },\r\n delete: async (url) => {\r\n try {\r\n const response = await axios({ url: url, method: \"DELETE\" });\r\n const { data } = response;\r\n return data;\r\n } catch (error) {\r\n const msg = handleErrorMessage(error);\r\n throw new Error(msg);\r\n }\r\n },\r\n};\r\n\r\nfunction handleErrorMessage(error) {\r\n if (error.response) {\r\n const errorResponseData = error.response.data;\r\n\r\n try {\r\n if (errorResponseData?.errors?.map) {\r\n return errorResponseData.errors.map((err) => err.description).join();\r\n } else {\r\n if (errorResponseData.error) {\r\n let msg = errorResponseData.error.message;\r\n if (errorResponseData.social) {\r\n msg +=\r\n \"|\" +\r\n errorResponseData.social.socialId +\r\n \"|\" +\r\n errorResponseData.social.name;\r\n }\r\n return msg;\r\n } else if (errorResponseData.title) {\r\n return errorResponseData.title;\r\n } else {\r\n return errorResponseData.code;\r\n }\r\n }\r\n } catch (er) {\r\n return error.message;\r\n }\r\n } else {\r\n return error.message;\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n","import { render } from \"./Spinner.vue?vue&type=template&id=0db8f28c&scoped=true\"\nimport script from \"./Spinner.vue?vue&type=script&lang=js\"\nexport * from \"./Spinner.vue?vue&type=script&lang=js\"\n\nimport \"./Spinner.vue?vue&type=style&index=0&id=0db8f28c&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0db8f28c\"]])\n\nexport default __exports__","import { ApiEndPoints } from '@/api/Endpoints';\r\nimport { API } from '@/api/API';\r\nimport{useCapabilities}from '@/utils/Capabilities'\r\n\r\nexport const show = async (id) =>{\r\n const { isPublisher, isConcessionaire} = useCapabilities()\r\n const usePublisherController = isPublisher()||isConcessionaire()\r\n const endpoint = usePublisherController ? ApiEndPoints.PUBLISHERS+'/user' : ApiEndPoints.USERS\r\n const {data} = await API.get(endpoint+'/'+id)\r\n \r\n\r\n //const {data} = await API.get(ApiEndPoints.USERS+'/'+id)\r\n return data\r\n}\r\n\r\nexport const list = async (params = {}, endpoint = ApiEndPoints.USERS) => {\r\n const {data, headers} = await API.get(endpoint, params)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n return {data, pagination}\r\n}\r\n\r\nexport const apiUserFunction = {\r\n show,\r\n list\r\n} ","/**\r\n * Classico debounce, ritarda l'esecuzione di una funzione\r\n * @param {Function} func : la funzione da ritardare\r\n * @param {Number} wait : quanto deve aspettare prima di eseguire la funzione (ms)\r\n */\r\n export function debounce (func, wait) {\r\n \r\n let timeout = null\r\n \r\n return function () {\r\n const context = this\r\n const args = arguments\r\n \r\n const later = () => {\r\n \r\n func.apply(context, args)\r\n }\r\n \r\n clearTimeout(timeout)\r\n timeout = setTimeout(later, wait)\r\n }\r\n }","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FakeUserPanel.vue?vue&type=style&index=0&id=b41ead58&scoped=true&lang=css\"","\r\n\r\n\r\n\r\n","import { render } from \"./AjaxSearchSelect.vue?vue&type=template&id=316a38a0\"\nimport script from \"./AjaxSearchSelect.vue?vue&type=script&lang=js\"\nexport * from \"./AjaxSearchSelect.vue?vue&type=script&lang=js\"\n\nimport \"./AjaxSearchSelect.vue?vue&type=style&index=0&id=316a38a0&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","module.exports = \"data:image/png;base64,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\"","\r\n","import { render } from \"./UserRoleSelect.vue?vue&type=template&id=12f2b36e\"\nimport script from \"./UserRoleSelect.vue?vue&type=script&lang=js\"\nexport * from \"./UserRoleSelect.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n\r\n\r\n\r\n","\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","import { render } from \"./FakeUserPanel.vue?vue&type=template&id=b41ead58&scoped=true\"\nimport script from \"./FakeUserPanel.vue?vue&type=script&lang=js\"\nexport * from \"./FakeUserPanel.vue?vue&type=script&lang=js\"\n\nimport \"./FakeUserPanel.vue?vue&type=style&index=0&id=b41ead58&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b41ead58\"]])\n\nexport default __exports__","\r\n\r\n","\r\n","import { render } from \"./UserScopeSelect.vue?vue&type=template&id=469b3d17\"\nimport script from \"./UserScopeSelect.vue?vue&type=script&lang=js\"\nexport * from \"./UserScopeSelect.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./ProfilePanel.vue?vue&type=template&id=5ff27698\"\nimport script from \"./ProfilePanel.vue?vue&type=script&lang=js\"\nexport * from \"./ProfilePanel.vue?vue&type=script&lang=js\"\n\nimport \"./ProfilePanel.vue?vue&type=style&index=0&id=5ff27698&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n\r\n","import { render } from \"./CodyWidget.vue?vue&type=template&id=4264df6f\"\nimport script from \"./CodyWidget.vue?vue&type=script&lang=js\"\nexport * from \"./CodyWidget.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./SideNav.vue?vue&type=template&id=23b53302\"\nimport script from \"./SideNav.vue?vue&type=script&lang=js\"\nexport * from \"./SideNav.vue?vue&type=script&lang=js\"\n\nimport \"./SideNav.vue?vue&type=style&index=0&id=23b53302&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n","import { render } from \"./TheHeader.vue?vue&type=template&id=f0399ff0\"\nimport script from \"./TheHeader.vue?vue&type=script&lang=js\"\nexport * from \"./TheHeader.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n","import { render } from \"./ConfirmBox.vue?vue&type=template&id=9a6a3cf0\"\nimport script from \"./ConfirmBox.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmBox.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","const Home = () => import(/* webpackChunkName: \"home\" */ '@/views/Home.vue')\r\nimport {store} from '@/store/store.js'\r\nexport const home ={\r\n path: '/',\r\n name: 'home',\r\n component: Home,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n await store.dispatch('campaigns/index')\r\n //await store.dispatch('calendar/index')\r\n await store.dispatch('socialcampaigns/proposed')\r\n\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n}","const Tags = () => import(/* webpackChunkName: \"tags\" */ '@/views/Tags.vue')\r\nimport {store} from '@/store/store.js'\r\nimport {resetResizerValues} from '@/utils/ColumnsResizer' \r\nexport const tags ={\r\n path: '/tags',\r\n name: 'tags',\r\n component: Tags,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n await store.dispatch('tags/getTags')\r\n resetResizerValues('tags')\r\n store.commit('tags/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n}\r\n\r\nexport const tagById = {\r\n path: '/tag/:id',\r\n name: 'tag',\r\n component: Tags,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try { \r\n if(store.getters['tags/tags'].length === 0){\r\n await store.dispatch('tags/getTags')\r\n }\r\n \r\n resetResizerValues('tags')\r\n store.commit('tags/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }","import {store} from '@/store/store.js'\r\nimport {resetResizerValues} from '@/utils/ColumnsResizer' \r\n//import {useCapabilities} from '@/utils/Capabilities'\r\nconst Users = () => import(/* webpackChunkName: \"users\" */ '@/views/Users.vue')\r\nexport const users = {\r\n path: '/users',\r\n name: 'users',\r\n component: Users,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n // const { canManageScopes} = useCapabilities()\r\n await store.dispatch('user/users')\r\n \r\n /* if(canManageScopes.value){\r\n // await store.dispatch('userscope/userScopes')\r\n } */\r\n resetResizerValues('user')\r\n store.commit('user/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }\r\n\r\nexport const userById = { \r\n path: '/user/:id',\r\n name:'user',\r\n component: Users, \r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n if(store.getters['user/users'].length === 0){\r\n await store.dispatch('user/users')\r\n }\r\n \r\n resetResizerValues('user')\r\n store.commit('user/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }","\r\nimport {store} from '@/store/store.js'\r\nimport {resetResizerValues} from '@/utils/ColumnsResizer' \r\nconst UserScopes = () => import(/* webpackChunkName: \"userscopes\" */ '@/views/UserScopes.vue')\r\nexport const userscopes = {\r\n path: '/userscopes',\r\n name: 'userscopes',\r\n component: UserScopes,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n await store.dispatch('userscope/userScopes')\r\n\r\n resetResizerValues('userscope')\r\n store.commit('userscope/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n },\r\n}\r\nexport const userscopeByID = {\r\n path: '/userscope/:id',\r\n name: 'userscope',\r\n component: UserScopes,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n if(store.getters['userscope/scopes'].length === 0){\r\n await store.dispatch('userscope/userScopes')\r\n }\r\n \r\n resetResizerValues('userscope', to.params.id)\r\n store.commit('userscope/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n },\r\n }","import {store} from '@/store/store.js'\r\nimport {resetResizerValues} from '@/utils/ColumnsResizer' \r\nconst Campaigns = () => import(/* webpackChunkName: \"campaigns\" */ '@/views/Campaigns.vue')\r\nexport const campaigns ={\r\n path: '/campaigns',\r\n name: 'campaigns',\r\n component: Campaigns,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n \r\n await store.dispatch('campaigns/index')\r\n /* await store.dispatch('tags/getTags')\r\n await store.dispatch('social/list')\r\n await store.dispatch('post/index')\r\n await store.dispatch('user/users') */\r\n store.commit('campaigns/clear_filters')\r\n resetResizerValues('campaigns')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }\r\n export const campaignByID ={\r\n path: '/campaigns/:id',\r\n name: 'campaign',\r\n component: Campaigns,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n if(store.getters['campaigns/campaigns'].length === 0){\r\n await store.dispatch('campaigns/index')\r\n }\r\n resetResizerValues('campaigns')\r\n store.commit('campaigns/clear_filters')\r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }","import {store} from '@/store/store.js'\r\nimport {resetResizerValues} from '@/utils/ColumnsResizer' \r\nconst Socials = () => import(/* webpackChunkName: \"socials\" */ '@/views/Socials.vue')\r\nexport const socials = {\r\n path: '/socials',\r\n name: 'socials',\r\n component: Socials,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n store.commit('social/clear_filters')\r\n await store.dispatch('social/list')\r\n resetResizerValues('social')\r\n \r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }\r\n export const socialByID = {\r\n path: '/social/:id',\r\n name: 'social',\r\n component: Socials,\r\n meta: {\r\n requiresAuth: true\r\n },\r\n beforeEnter: async(to, from, next) => {\r\n try {\r\n store.commit('social/clear_filters')\r\n if(store.getters['social/social'].length === 0){\r\n await store.dispatch('social/list')\r\n }\r\n \r\n resetResizerValues('social')\r\n \r\n next();\r\n } catch(exception) {\r\n next(exception);\r\n }\r\n }\r\n }","const Login = () => import(/* webpackChunkName: \"login\" */ '@/views/Login.vue')\r\n\r\nexport const login = {\r\n path: '/login',\r\n name: 'login',\r\n component: Login,\r\n meta: {\r\n requiresAuth: false\r\n }\r\n }","const ForgotPassword = () => import(/* webpackChunkName: \"forgotpassword\" */ '@/views/ForgotPassword.vue')\r\nexport const forgot = {\r\n path: '/forgot',\r\n name: 'forgot',\r\n component: ForgotPassword,\r\n meta: {\r\n requiresAuth: false\r\n }\r\n }","const ResetPassword = () => import(/* webpackChunkName: \"resetpassword\" */ '@/views/ResetPassword.vue')\r\nexport const reset = {\r\n path: '/auth/password/reset/:token',\r\n name: 'resetpassword',\r\n component: ResetPassword,\r\n meta: {\r\n requiresAuth: false\r\n }\r\n }","const PageNotFound = () => import(/* webpackChunkName: \"notfound\" */ '@/views/PageNotFound.vue')\r\nexport const notfound = {\r\n path: '/:catchAll(.*)',\r\n name: 'NotFound',\r\n component: PageNotFound,\r\n meta: {\r\n requiresAuth: false\r\n }\r\n }","const PostMockup = () => import(/* webpackChunkName: \"mockup\" */ '@/views/PostMockup.vue')\r\nexport const mockup ={\r\n path: '/mockup',\r\n name: 'mockup',\r\n component: PostMockup,\r\n meta: {\r\n requiresAuth: true\r\n }\r\n}","const List = () => import(\"@/views/Quotes.vue\");\r\nconst Edit = () => import(\"@/components/quotes/EditQuote.vue\");\r\nconst Preview = () => import(\"@/views/QuotePreview.vue\");\r\n\r\nexport const quotes = {\r\n path: \"/quotes\",\r\n name: \"quotes\",\r\n component: List,\r\n meta: {\r\n requiresAuth: true,\r\n },\r\n};\r\n\r\nexport const editQuote = {\r\n path: \"/quotes/edit/:id?\",\r\n name: \"editQuote\",\r\n component: Edit,\r\n meta: {\r\n requiresAuth: true,\r\n },\r\n};\r\n\r\nexport const quotePreview = {\r\n path: \"/quotes/preview/:cod\",\r\n name: \"quotePreview\",\r\n component: Preview,\r\n meta: {\r\n requiresAuth: false,\r\n },\r\n};\r\n","const SudoPanel = () => import(\"@/views/SudoPanel.vue\");\r\nexport const sudo = {\r\n path: \"/sudo\",\r\n name: \"sudo\",\r\n component: SudoPanel,\r\n meta: {\r\n requiresAuth: true,\r\n },\r\n};\r\n","import { home } from \"./routes/home\";\r\nimport { tags, tagById } from \"./routes/tags\";\r\nimport { users, userById } from \"./routes/users\";\r\nimport { userscopes, userscopeByID } from \"./routes/userscopes\";\r\nimport { campaigns, campaignByID } from \"./routes/campaigns\";\r\nimport { socials, socialByID } from \"./routes/socials\";\r\nimport { login } from \"./routes/login\";\r\nimport { forgot } from \"./routes/forgotpass\";\r\nimport { reset } from \"./routes/reset\";\r\nimport { notfound } from \"./routes/notfound\";\r\nimport { mockup } from \"./routes/mockup\";\r\nimport { quotes, editQuote, quotePreview } from \"./routes/quotes\";\r\nimport { sudo } from \"./routes/sudo\";\r\n\r\nexport const routes = [\r\n home,\r\n users,\r\n userById,\r\n userscopes,\r\n userscopeByID,\r\n campaigns,\r\n campaignByID,\r\n socials,\r\n socialByID,\r\n tagById,\r\n tags,\r\n login,\r\n forgot,\r\n reset,\r\n notfound,\r\n mockup,\r\n quotes,\r\n editQuote,\r\n quotePreview,\r\n sudo,\r\n];\r\n","import { createWebHistory, createRouter } from \"vue-router\";\r\nimport {store} from '@/store/store.js'\r\nimport { routes } from './routes';\r\n\r\nconst router = createRouter({\r\n history: createWebHistory(),\r\n routes,\r\n});\r\nrouter.beforeEach((to, from, next) => {\r\n if (to.matched.some(record => record.meta.requiresAuth)) {\r\n if (store.getters['auth/isLoggedIn']) {\r\n next()\r\n return\r\n }\r\n next('/login')\r\n } else {\r\n next()\r\n }\r\n})\r\n\r\nexport default router\r\n","import {store} from '@/store/store'\r\nimport {computed} from 'vue'\r\nimport router from '@/router/index'\r\nimport { \r\n MESSAGE_TITLE, \r\n MESSAGE, \r\n MESSAGE_CLOSE, \r\n DO_LOGOUT, \r\n MESSAGE_SHOW \r\n } from '@/store/VuexPaths'\r\n\r\nexport const showConfirm = computed(()=>store.getters[MESSAGE_SHOW])\r\nexport const message = computed(()=>store.getters[MESSAGE])\r\nexport const messageTitle = computed(()=>store.getters[MESSAGE_TITLE])\r\n\r\nexport const onCloseMessage = async (msg) => {\r\n await store.dispatch(MESSAGE_CLOSE)\r\n if(msg === 'Request failed with status code 401'){\r\n await store.dispatch(DO_LOGOUT)\r\n router.push('/login')\r\n\r\n }\r\n}","import{\r\n USER_ROLE_SUPER,\r\n USER_ROLE_ADVERTISER,\r\n USER_ROLE_CONCESSIONAIRE_ADMIN,\r\n USER_ROLE_CONCESSIONAIRE_USER,\r\n USER_ROLE_PUBLISHER_ADMIN,\r\n USER_ROLE_PUBLISHER_USER\r\n } from '@/utils/RolesAndPolicies'\r\n\r\nexport const getMainGridClassname =(me, bigMenu)=>{\r\n let className = 'grid-container'\r\n if(!bigMenu.value) {\r\n className+= ' mini-menu'\r\n }\r\n if(me.value){\r\n switch(me.value.roles[0]){\r\n case USER_ROLE_SUPER:\r\n className += ' super-layout'\r\n break;\r\n case USER_ROLE_CONCESSIONAIRE_ADMIN:\r\n case USER_ROLE_CONCESSIONAIRE_USER:\r\n className += ' conc-layout'\r\n break;\r\n case USER_ROLE_PUBLISHER_ADMIN:\r\n case USER_ROLE_PUBLISHER_USER:\r\n className += ' pub-layout'\r\n break;\r\n case USER_ROLE_ADVERTISER:\r\n className += ' adv-layout'\r\n break;\r\n default:\r\n break;\r\n }\r\n \r\n }\r\n return className\r\n}","import { render } from \"./App.vue?vue&type=template&id=e3cb7cb6\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=e3cb7cb6&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createApp } from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport { store } from './store/store'\r\nimport axios from 'axios'\r\n\r\nimport '@vueform/multiselect/themes/default.css'\r\nimport 'vue-cal/dist/vuecal.css'\r\nimport '@/css/style.css'\r\nimport '@/css/addons.css'\r\nimport '@/css/LineIcons.css'\r\nimport mitt from \"mitt\";\r\nconst emitter = mitt();\r\n\r\nconst app = createApp(App);\r\napp.config.globalProperties.emitter = emitter;\r\napp.config.globalProperties.http = axios\r\napp.use(store)\r\napp.use(router)\r\napp.mount('#app')\r\n\r\n\r\n\r\n\r\n","\r\n","import { render } from \"./UserListElement.vue?vue&type=template&id=61d31f1a\"\nimport script from \"./UserListElement.vue?vue&type=script&lang=js\"\nexport * from \"./UserListElement.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\nexport const timeStampToFormattedDate = (timestamp, options= { year: 'numeric', month: 'short', day: 'numeric' }) =>{\r\n //const options = { year: 'numeric', month: 'short', day: 'numeric' }\r\n const date = new Date(timestamp)\r\n return date.toLocaleDateString('it', options).replace(new RegExp('/', 'g'), '-')\r\n} \r\nexport const timeStampToFormattedDateTime = (timestamp, options= { year: 'numeric', month: 'short', day: 'numeric' }) =>{\r\n //const options = { year: 'numeric', month: 'short', day: 'numeric' }\r\n const date = new Date(timestamp)\r\n return date.toLocaleTimeString('it', options).replace(new RegExp('/', 'g'), '-')\r\n} \r\n\r\n\r\nexport const dayhours = [\r\n '00:00',\r\n '01:00',\r\n '02:00',\r\n '03:00',\r\n '04:00',\r\n '05:00',\r\n '06:00',\r\n '07:00',\r\n '08:00',\r\n '09:00',\r\n '10:00',\r\n '11:00',\r\n '12:00',\r\n '13:00',\r\n '14:00',\r\n '15:00',\r\n '16:00',\r\n '17:00',\r\n '18:00',\r\n '19:00',\r\n '20:00',\r\n '21:00',\r\n '22:00',\r\n '23:00'\r\n]\r\n\r\n\r\nexport const strNumToNumber = (numString) =>{\r\n if(numString.charAt(0) === '0'){\r\n return parseInt(numString.substr(1,1))\r\n }else{\r\n return parseInt(numString)\r\n }\r\n}\r\n\r\nexport const diffDates = (start, end ) =>{\r\n const diffTime = Math.abs(end - start)\r\n const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24))\r\n return diffDays > 1\r\n}\r\n\r\n\r\n","import { computed } from \"vue\";\r\nimport {\r\n IS_LOGGED /* , CURRENT_ROLE */,\r\n ME,\r\n REAL_ROLE,\r\n} from \"./../store/VuexPaths\";\r\nimport {\r\n POLICY_MANAGE_USERS,\r\n POLICY_MANAGE_TAG,\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_MANAGE_USERSCOPE,\r\n POLICY_MANAGE_QUOTES,\r\n USER_ROLE_SUPER,\r\n USER_ROLE_ADMIN,\r\n USER_ROLE_ADVERTISER,\r\n USER_ROLE_PUBLISHER_ADMIN,\r\n USER_ROLE_PUBLISHER_USER,\r\n USER_ROLE_CONCESSIONAIRE_USER,\r\n USER_ROLE_CONCESSIONAIRE_ADMIN,\r\n} from \"../utils/RolesAndPolicies\";\r\n\r\nimport { store } from \"@/store/store\";\r\n\r\nconst me = computed(() => {\r\n return store.getters[ME];\r\n});\r\nconst currentRole = computed(() => {\r\n return store.getters[\"auth/currentMe\"];\r\n});\r\nconst realRole = computed(() => {\r\n return store.getters[REAL_ROLE];\r\n});\r\n\r\nconst realMe = computed(() => {\r\n return store.getters[\"auth/realMe\"];\r\n});\r\nconst mocking = computed(() => {\r\n return store.getters[\"auth/mocking\"];\r\n});\r\nconst canManageUsers = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_USERS) !==\r\n undefined\r\n );\r\n});\r\n\r\nconst canManageTags = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_TAG) !==\r\n undefined\r\n );\r\n});\r\nconst canManageCampaigns = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_CAMPAIGN) !==\r\n undefined\r\n );\r\n});\r\nconst canManageSocials = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_SOCIAL) !==\r\n undefined\r\n );\r\n});\r\nconst canManageQuotes = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_QUOTES) !==\r\n undefined\r\n );\r\n});\r\nconst canManageScopes = computed(() => {\r\n return (\r\n currentRole.value.policies.find((p) => p === POLICY_MANAGE_USERSCOPE) !==\r\n undefined\r\n );\r\n});\r\n\r\nconst isLoggedIn = computed(() => {\r\n return store.getters[IS_LOGGED];\r\n});\r\n\r\nconst isAdmin = () => {\r\n return (\r\n currentRole.value.roles[0] === USER_ROLE_SUPER ||\r\n currentRole.value.roles[0] === USER_ROLE_ADMIN\r\n );\r\n};\r\nconst isAdvertiser = () => {\r\n return currentRole.value.roles[0] === USER_ROLE_ADVERTISER;\r\n};\r\nconst isPublisher = () => {\r\n return (\r\n currentRole.value.roles[0] === USER_ROLE_PUBLISHER_ADMIN ||\r\n currentRole.value.roles[0] === USER_ROLE_PUBLISHER_USER\r\n );\r\n};\r\nconst isConcessionaire = () => {\r\n return (\r\n currentRole.value.roles[0] === USER_ROLE_CONCESSIONAIRE_ADMIN ||\r\n currentRole.value.roles[0] === USER_ROLE_CONCESSIONAIRE_USER\r\n );\r\n};\r\n\r\nexport const useCapabilities = () => {\r\n return {\r\n me,\r\n currentRole,\r\n realRole,\r\n canManageUsers,\r\n canManageTags,\r\n canManageCampaigns,\r\n canManageSocials,\r\n canManageScopes,\r\n canManageQuotes,\r\n isLoggedIn,\r\n realMe,\r\n mocking,\r\n isAdmin,\r\n isAdvertiser,\r\n isPublisher,\r\n isConcessionaire,\r\n };\r\n};\r\n","\r\n\r\n\r\n","\r\n\r\n\r\n\r\n","import { render } from \"./ImageAi.vue?vue&type=template&id=7081dfb6\"\nimport script from \"./ImageAi.vue?vue&type=script&lang=js\"\nexport * from \"./ImageAi.vue?vue&type=script&lang=js\"\n\nimport \"./ImageAi.vue?vue&type=style&index=0&id=7081dfb6&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./FileUpload.vue?vue&type=template&id=054d00a0\"\nimport script from \"./FileUpload.vue?vue&type=script&lang=js\"\nexport * from \"./FileUpload.vue?vue&type=script&lang=js\"\n\nimport \"./FileUpload.vue?vue&type=style&index=0&id=054d00a0&lang=postcss\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export const DO_LOGIN = 'auth/login'\r\nexport const DO_LOGOUT = 'auth/dologout'\r\nexport const IS_LOGGED = 'auth/isLoggedIn'\r\nexport const TOKEN = 'auth/token'\r\nexport const ME = 'auth/me'\r\nexport const REAL_ROLE = 'auth/realRole'\r\nexport const CURRENT_ROLE = 'auth/currentRole'\r\nexport const SWITCH_ROLE = 'auth/switchRole'\r\nexport const FORGOT_PASSWORD = 'auth/forgotPassword'\r\nexport const UNDO_FORGOT_PASSWORD = 'auth/undoForgotPassword'\r\nexport const HAS_FORGOT_PASSWORD = 'auth/pwdForgot'\r\nexport const RESET_PASSWORD = 'auth/resetPassword'\r\n\r\nexport const USERS = 'user/users'\r\nexport const USER_SCOPES = 'userscope/userScopes'\r\nexport const GET_USER_SCOPES = 'userscope/scopes'\r\n\r\nexport const CAMPAIGNS = 'campaigns/campaigns'\r\nexport const GET_CAMPAIGNS = 'campaigns/index'\r\n\r\n\r\nexport const TAGS = 'tags/tags'\r\nexport const GET_TAGS = 'tags/getTags'\r\n\r\n\r\nexport const SOCIAL_FB = 'social/facebook'\r\nexport const SOCIAL_FB_LIST = 'social/facebookList'\r\nexport const SOCIAL_LIST = 'social/social'\r\n\r\nexport const MESSAGE = 'messages/message'\r\nexport const MESSAGE_TITLE = 'messages/title'\r\nexport const MESSAGE_SHOW = 'messages/show'\r\nexport const MESSAGE_CLOSE = 'messages/close'","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./AjaxSearchSelect.vue?vue&type=style&index=0&id=316a38a0&lang=postcss\"","import { ApiEndPoints } from '@/api/Endpoints';\r\nimport { API } from '@/api/API';\r\n\r\nexport const show = async (id) =>{\r\n const {data} = await API.get(ApiEndPoints.USER_SCOPE+'/'+id)\r\n return data\r\n}\r\n\r\n\r\n\r\nexport const list = async (params = {}, endpoint = ApiEndPoints.USER_SCOPE) => {\r\n console.log('list')\r\n const {data, headers} = await API.get(endpoint, params)\r\n const pagination = JSON.parse(headers['x-pagination'])\r\n return {data, pagination}\r\n}\r\n\r\n\r\nexport const apiUserScopeFunction = {\r\n show,\r\n list\r\n} ","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./SideNav.vue?vue&type=style&index=0&id=23b53302&lang=postcss\"","import {store} from '@/store/store'\r\nimport {ref, reactive} from 'vue'\r\nimport {EventsHandler} from '@/utils/EventsHandler'\r\n\r\nconst tools = ref(null)\r\nconst card = ref(null)\r\nconst list = ref(null)\r\nconst calendarColumn = ref(null)\r\nconst latestColumn = ref(null)\r\n\r\nconst toolStyle = reactive({\r\n 'min-width':'250px',\r\n 'width': '30%',\r\n 'max-width': '35%'\r\n})\r\n\r\nconst cardStyle = reactive({\r\n 'min-width':'300px',\r\n 'width': '65%'\r\n})\r\n\r\nconst listStyle = reactive({\r\n 'min-width':'225px',\r\n 'width': '30%',\r\n 'max-width': '35%'\r\n})\r\nconst calendarStyle = reactive({\r\n 'min-width':'750px',\r\n 'width': '64%',\r\n 'max-width': '1228px'\r\n})\r\nconst latestStyle = reactive({\r\n 'min-width':'400px',\r\n 'width': '33%',\r\n 'max-width': '80%'\r\n})\r\n\r\nconst totalSize = ref(null)\r\n\r\nconst onTotalSize= (event)=>{\r\n if(tools.value){\r\n cardStyle.width = event - list.value.$el.getBoundingClientRect().width - tools.value.$el.getBoundingClientRect().width + 'px'\r\n }else{\r\n if(list.value){\r\n cardStyle.width = event - list.value.$el.getBoundingClientRect().width + 'px' \r\n } \r\n }\r\n if(calendarColumn.value && latestColumn.value){\r\n latestStyle.width = event - calendarColumn.value.$el.getBoundingClientRect().width + 'px' \r\n }\r\n totalSize.value = event\r\n}\r\n\r\nconst homeColumnResize = (event) =>{\r\n const {diff, index, currentWidth} = event\r\n \r\n let newColumnWidth = currentWidth + diff \r\n let cardW = calendarColumn.value.$el.getBoundingClientRect().width\r\n if(index === 0){\r\n calendarStyle.width = newColumnWidth + 'px'\r\n latestStyle.width = totalSize.value - newColumnWidth + 'px'\r\n }else{\r\n calendarStyle.width = totalSize.value - newColumnWidth - cardW + 'px'\r\n latestStyle.width = newColumnWidth + 'px'\r\n }\r\n EventsHandler.publish('resize-calendar')\r\n}\r\n\r\nconst usersColumnResize = (event)=>{\r\n const {diff, index, currentWidth} = event\r\n let newColumnWidth = currentWidth + diff \r\n let toolsWidth = tools.value.$el.getBoundingClientRect().width\r\n let listWidth = list.value.$el.getBoundingClientRect().width\r\n const hasCard = card.value\r\n \r\n if(index ===0){\r\n\r\n if(hasCard) cardStyle.width = totalSize.value - newColumnWidth - listWidth + 'px'\r\n toolStyle.width = newColumnWidth + 'px'\r\n }else if(index === 1){\r\n if(hasCard) cardStyle.width = totalSize.value - newColumnWidth - toolsWidth + 'px'\r\n listStyle.width = newColumnWidth + 'px'\r\n }else{\r\n \r\n cardStyle.width = newColumnWidth + 'px'\r\n }\r\n}\r\nconst campaignColumnResize = (event)=>{\r\n const {diff, index, currentWidth} = event\r\n let newColumnWidth = currentWidth + diff \r\n let listWidth = list.value.$el.getBoundingClientRect().width\r\n const hasCard = card.value\r\n if(index ===0){\r\n if(hasCard)\r\n cardStyle.width = totalSize.value - newColumnWidth + 'px'\r\n listStyle.width = newColumnWidth + 'px'\r\n }else if(index === 1){\r\n if(hasCard) {\r\n cardStyle.width = totalSize.value - newColumnWidth - listWidth + 'px'\r\n }\r\n listStyle.width = newColumnWidth + 'px'\r\n }\r\n}\r\n\r\nconst tagsColumnResize = (event)=>{\r\n const {diff, index, currentWidth} = event\r\n let newColumnWidth = currentWidth + diff \r\n let listWidth = list.value.$el.getBoundingClientRect().width\r\n const hasCard = card.value\r\n if(index ===0){\r\n\r\n if(hasCard)\r\n cardStyle.width = totalSize.value - newColumnWidth + 'px'\r\n listStyle.width = newColumnWidth + 'px'\r\n }else if(index === 1){\r\n if(hasCard) cardStyle.width = totalSize.value - newColumnWidth - listWidth + 'px'\r\n listStyle.width = newColumnWidth + 'px'\r\n }\r\n}\r\n\r\nconst resetResizerValues =(storePath, id=undefined)=> {\r\n \r\n const sizes = store.getters[storePath+'/columnsSizes']\r\n \r\n if(sizes){\r\n \r\n toolStyle['width'] = sizes['toolsW'] ? sizes['toolsW'] : '30%'\r\n listStyle['width'] = sizes['listW'] ? sizes['listW'] : '30%'\r\n if(id && sizes['cardW']){\r\n cardStyle['width'] = sizes['cardW']\r\n }\r\n \r\n }else{\r\n \r\n toolStyle['width'] = '30%'\r\n listStyle['width'] = '30%'\r\n if(id)\r\n cardStyle['width'] = '70%'\r\n }\r\n \r\n \r\n}\r\n\r\nconst disableElementUserSelect = ()=>{\r\n Array.from(document.querySelectorAll('*')).forEach(el => {\r\n el.classList.add('unselectable')\r\n })\r\n}\r\nconst enableElementUserSelect = ()=>{\r\n Array.from(document.querySelectorAll('*')).forEach(el => {\r\n el.classList.remove('unselectable')\r\n })\r\n}\r\n\r\nexport {\r\n tools,\r\n toolStyle,\r\n card,\r\n cardStyle,\r\n list,\r\n listStyle,\r\n onTotalSize,\r\n totalSize,\r\n usersColumnResize,\r\n campaignColumnResize,\r\n tagsColumnResize,\r\n resetResizerValues,\r\n disableElementUserSelect,\r\n enableElementUserSelect,\r\n homeColumnResize,\r\n calendarStyle,\r\n latestStyle,\r\n latestColumn,\r\n calendarColumn\r\n}","/**\r\n * User roles\r\n */\r\nexport const USER_ROLE_SUPER = \"Superuser\";\r\nexport const USER_ROLE_ADMIN = \"Admin\";\r\nexport const USER_ROLE_ADVERTISER = \"Advertiser\";\r\nexport const USER_ROLE_USER = \"User\";\r\nexport const USER_ROLE_CONCESSIONAIRE_ADMIN = \"ConcessionaireAdmin\";\r\nexport const USER_ROLE_CONCESSIONAIRE_USER = \"ConcessionaireUser\";\r\nexport const USER_ROLE_PUBLISHER_ADMIN = \"PublisherAdmin\";\r\nexport const USER_ROLE_PUBLISHER_USER = \"PublisherUser\";\r\n\r\n/**\r\n * Policies\r\n */\r\nexport const POLICY_MANAGE_USERS = \"ManageUsers\";\r\nexport const POLICY_MANAGE_USERSCOPE = \"ManageUserScope\";\r\nexport const POLICY_MANAGE_TAG = \"ManageTag\";\r\nexport const POLICY_MANAGE_CAMPAIGN = \"ManageCampaign\";\r\nexport const POLICY_MANAGE_SOCIAL = \"ManageSocial\";\r\nexport const POLICY_SAMEUSER = \"SameUser\";\r\nexport const POLICY_OWNSSOCIAL = \"OwnsSocial\";\r\nexport const POLICY_MANAGE_QUOTES = \"ManageQuotes\";\r\n\r\n/**\r\n * userScope: Concessionaire/Publisher\r\n */\r\nexport const USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR = \"Concessionaire\";\r\nexport const USER_SCOPE_PUBLISHER_DISCRIMINATOR = \"Publisher\";\r\n\r\nexport const SuperUser = {\r\n name: USER_ROLE_SUPER,\r\n policies: [\r\n POLICY_MANAGE_USERS,\r\n POLICY_MANAGE_USERSCOPE,\r\n POLICY_MANAGE_TAG,\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_SAMEUSER,\r\n POLICY_OWNSSOCIAL,\r\n POLICY_MANAGE_QUOTES,\r\n ],\r\n};\r\nexport const AdminUser = {\r\n name: USER_ROLE_ADMIN,\r\n policies: [\r\n POLICY_MANAGE_USERS,\r\n POLICY_MANAGE_USERSCOPE,\r\n POLICY_MANAGE_TAG,\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_SAMEUSER,\r\n POLICY_OWNSSOCIAL,\r\n POLICY_MANAGE_QUOTES,\r\n ],\r\n};\r\nexport const AdvertiserUser = {\r\n name: USER_ROLE_ADVERTISER,\r\n policies: [\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_SAMEUSER,\r\n POLICY_OWNSSOCIAL,\r\n ],\r\n};\r\n\r\nexport const ConcessionaireAdmin = {\r\n name: USER_ROLE_CONCESSIONAIRE_ADMIN,\r\n policies: [\r\n POLICY_MANAGE_USERS,\r\n POLICY_MANAGE_USERSCOPE,\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_SAMEUSER,\r\n POLICY_OWNSSOCIAL,\r\n ],\r\n discriminator: USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR,\r\n};\r\nexport const ConcessionaireUser = {\r\n name: USER_ROLE_CONCESSIONAIRE_USER,\r\n policies: [POLICY_MANAGE_CAMPAIGN, POLICY_SAMEUSER],\r\n discriminator: USER_SCOPE_CONCESSIONAIRE_DISCRIMINATOR,\r\n};\r\nexport const PublisherAdmin = {\r\n name: USER_ROLE_PUBLISHER_ADMIN,\r\n policies: [\r\n POLICY_MANAGE_USERS,\r\n /* POLICY_MANAGE_USERSCOPE, */\r\n POLICY_MANAGE_CAMPAIGN,\r\n POLICY_MANAGE_SOCIAL,\r\n POLICY_SAMEUSER,\r\n POLICY_OWNSSOCIAL,\r\n ],\r\n discriminator: USER_SCOPE_PUBLISHER_DISCRIMINATOR,\r\n};\r\nexport const PublisherUser = {\r\n name: USER_ROLE_PUBLISHER_USER,\r\n policies: [POLICY_MANAGE_SOCIAL, POLICY_SAMEUSER, POLICY_MANAGE_CAMPAIGN],\r\n discriminator: USER_SCOPE_PUBLISHER_DISCRIMINATOR,\r\n};\r\n\r\nexport const Roles = [\r\n SuperUser,\r\n AdminUser,\r\n AdvertiserUser,\r\n PublisherAdmin,\r\n PublisherUser,\r\n ConcessionaireAdmin,\r\n ConcessionaireUser,\r\n];\r\n\r\nexport const getPoliciesByRoleName = (role) => {\r\n return Roles.find((r) => r.name === role).policies;\r\n};\r\n","\r\n","import { render } from \"./EmailInput.vue?vue&type=template&id=b44c0ec6\"\nimport script from \"./EmailInput.vue?vue&type=script&lang=js\"\nexport * from \"./EmailInput.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./FileUpload.vue?vue&type=style&index=0&id=054d00a0&lang=postcss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Spinner.vue?vue&type=style&index=0&id=0db8f28c&scoped=true&lang=css\"","module.exports = __webpack_public_path__ + \"img/placeholder.cc6de941.png\";","export const API_BASE = process.env.VUE_APP_API_BASE;\r\nexport const ApiEndPoints = {\r\n LOGIN: API_BASE + \"/auth/login\",\r\n MOCK: API_BASE + \"/auth/mock\",\r\n PASSWORD_RESET: API_BASE + \"/auth/password/reset\",\r\n USER_ME: API_BASE + \"/user/me\",\r\n USERS: API_BASE + \"/user\",\r\n USER_SCOPE: API_BASE + \"/user-scope\",\r\n CAMPAIGNS: API_BASE + \"/campaign\",\r\n TAGS: API_BASE + \"/tag\",\r\n SOCIAL_FB: API_BASE + \"/social/facebook\",\r\n SOCIAL_IG: API_BASE + \"/social/instagram\",\r\n SOCIAL: API_BASE + \"/social\",\r\n POST_FB: API_BASE + \"/post/facebook\",\r\n POST_FB_ADVERT: API_BASE + \"/post/facebook-advertisement\",\r\n SOCIAL_CAMPAIGNS: API_BASE + \"/social-campaign\",\r\n GOOGLE_CALENDAR: API_BASE + \"/google/calendar/events\",\r\n PUBLISHERS: API_BASE + \"/publishers\",\r\n PUBLISHERS_TEST: API_BASE + \"/publishers/test\",\r\n FACEBOOK_HELPER: API_BASE + \"/helper/facebook\",\r\n ADVERTISERS: API_BASE + \"/advertisers\",\r\n QUOTES: API_BASE + \"/quote\",\r\n AI: API_BASE + \"/ai\",\r\n};\r\n","\r\n\r\n","import { render } from \"./ErrorMessage.vue?vue&type=template&id=22f056ed\"\nimport script from \"./ErrorMessage.vue?vue&type=script&lang=js\"\nexport * from \"./ErrorMessage.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader-v16/dist/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./App.vue?vue&type=style&index=0&id=e3cb7cb6&lang=postcss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ProfilePanel.vue?vue&type=style&index=0&id=5ff27698&lang=postcss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ImageAi.vue?vue&type=style&index=0&id=7081dfb6&lang=postcss\"","\r\n","import { render } from \"./TextInput.vue?vue&type=template&id=87175dca\"\nimport script from \"./TextInput.vue?vue&type=script&lang=js\"\nexport * from \"./TextInput.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Progetti\\\\Inflooendo\\\\Front\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"sourceRoot":""}