{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/services/articleService.js","webpack:///./src/components/Spinner.vue","webpack:///src/components/Spinner.vue","webpack:///./src/components/Spinner.vue?d848","webpack:///./src/components/Spinner.vue?72fe","webpack:///./src/types/dashboard/LayoutStyle.ts","webpack:///./src/store/modules/dashboardModule.ts","webpack:///./src/store/modules/notificationsModule.ts","webpack:///./src/store/modules/messageModule.js","webpack:///./src/helpers/requests/accounts/changeLicense.ts","webpack:///./src/helpers/requests/accounts/createUser.ts","webpack:///./src/helpers/requests/accounts/loginUser.ts","webpack:///./src/helpers/requests/accounts/logoutUser.ts","webpack:///./src/helpers/requests/accounts/resetPassword.ts","webpack:///./src/helpers/requests/accounts/sendPasswordResetEmail.ts","webpack:///./src/helpers/requests/accounts/sendSupportMessage.ts","webpack:///./src/helpers/requests/accounts/sendVerificationEmail.ts","webpack:///./src/helpers/requests/accounts/verifyEmail.ts","webpack:///./src/store/modules/accountsModule.ts","webpack:///./src/store/modules/articlesModule.js","webpack:///./src/store/services/filtersService.js","webpack:///./src/store/modules/filtersModule.js","webpack:///./src/store/modules/searchFilters.js","webpack:///./src/store/modules/filtersSidebarModule.ts","webpack:///./src/store/services/articleCollectionsService.js","webpack:///./src/store/modules/collectionsModule.js","webpack:///./src/store/modules/editSavedSearchModule.js","webpack:///./src/store/modules/applicationModule.ts","webpack:///./src/store/modules/foldersModule.js","webpack:///./src/store/modules/tooltip.js","webpack:///./src/store/index.js","webpack:///./src/layouts/components/LoadingOverlay.vue?6c4f","webpack:///./src/router/index.js","webpack:///./src/helpers/filtersHelper.js","webpack:///./src/App.vue","webpack:///src/App.vue","webpack:///./src/App.vue?03b3","webpack:///./src/App.vue?315a","webpack:///./src/helpers/trackingHelper.js","webpack:///./src/main.ts","webpack:///./src/store/services/accountService.js","webpack:///./src/App.vue?a21d","webpack:///./src/assets/images/logo.svg","webpack:///./src/helpers/urlParamsHelper.js","webpack:///./src/axios.ts","webpack:///./src/layouts/components/LoadingOverlay.vue","webpack:///src/layouts/components/LoadingOverlay.vue","webpack:///./src/layouts/components/LoadingOverlay.vue?9b45","webpack:///./src/layouts/components/LoadingOverlay.vue?4e94"],"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","articleService","getArticles","getArticlesByFilters","getAllStatesAgenciesAndAlertTypes","getTooltips","updateCountForCollection","currentToken","currentPage","axios","post","searchFilters","status","new","updated","classification","sro","federal","state","territory","county","international","multinational","filingType","single","joint","inFederalRegister","yes","not_yet","not_expected","regAlyticsAlertId","sec_release_number","docket_file_number","order_notice","federalRegisterNumber","agency","country","alertType","sector_type","tags","subtype_classification","higher_order_alert_classification","includes","orIncludes","excludes","latestUpdate","start","end","originallyPublished","proposedCommentsDue","ruleEffective","publishedInFederalReserve","searchValue","filters","agencies","alert_type","filing_type","in_federal_register","last_updated","comments_due","states","countries","sortBy","withCredentials","cancelToken","token","articles","selectedItems","filteredBy","url","collectionItem","store","getters","current_url","URL","location","last_viewed","searchParams","modified","collection_id","count","id","logViewedArticle","articleId","article_id","fetch_related_articles","logSearchHistory","totalResults","search_value","search_options","total_results","generate_base_article_url","host","origin","defaultSearchOptions","render","_vm","this","_self","_c","_m","staticRenderFns","staticClass","attrs","_v","component","LayoutStyle","dashboardModule","namespaced","dashboardStyle","pinned","class","getDashboardStyle","mutations","SET_DASHBOARD_STYLE_CLASS","payload","SET_DASHBOARD_STYLE_TYPE","SET_DASHBOARD_PINNED","actions","setDashboardStyleClass","commit","styles","MAX","MIN","setDashboardPinned","notificationsModule","notifications","getAllNotifications","ADD_TO_NOTIFICATIONS","unshift","autoHide","REMOVE_FROM_NOTIFICATIONS","notificationId","notificationIndex","findIndex","x","CLEAR_NOTIFICATIONS","pushNotification","dispatch","addNotification","uuidv4","removeNotification","clearNotification","messageModule","text","isMessage","getMessage","info","warning","clear","INFO","WARNING","ERROR","CLEAR","async","changeLicense","accessCode","patch","access_code","createUser","user","first_name","firstName","last_name","lastName","email","phone_number","phone","password1","password2","role","department","function","func","loginUser","password","logoutUser","resetPassword","userReset","uid","sendPasswordResetEmail","sendSupportMessage","supportMessage","subject","body","sendVerificationEmail","verifyEmail","tokenVerification","accountsModule","loading","telemetry","search_highlight","jwtToken","show_release_note","isLoading","getCurrentUser","SET_LOADING_STATUS","SET_USER_LAYOUT","layout","articles_layout","SET_SEARCH_HIGHLIGHT","LOGIN_SUCCESS","LOGOUT_SUCCESS","SET_ACCOUNT_DETAILS","SET_USERS_TOKEN","currentUserSignup","trial","trackingHelper","trackEvent","router","catch","response","non_field_errors","errMsg","redirectTo","detail","forEach","msg","login","trackUser","userData","access","defaults","headers","common","logout","cookies","cookie","split","eqPos","indexOf","substr","localStorage","resetUser","removeItem","sendResetPasswordEmail","tokenAndUid","log","errors","updateLoading","setAccountDetails","setUsersToken","setUserLayout","setSearchHighlight","articlesModule","currentRequest","isFetchingArticles","filterOptions","lastUpdatedCount","today_count","week_count","month_count","results","filteredResults","resultsByPage","currentBottom","fetchingNewPage","allPages","showingModal","modalDetails","getIsLoading","getIsFilteredBy","getIsFetchingArticles","getTotalResults","getIsShowingModal","getModalDetails","getResults","getResultsByPage","getCurrentPage","getCurrentBottom","getArticlesCount","getAllPages","getFilterOptions","getLastUpdateCounts","getFetchingNewPage","getCollectionID","SET_RESULTS","ADD_TO_RESULTS","newList","concat","SET_IS_FILTERED_BY","SET_IS_FETCHING_ARTICLES","SET_FILTERED_RESULTS","SET_TOTAL_RESULTS","SET_FILTER_OPTIONS","SET_LAST_UPDATE_COUNTS","SET_ALL_PAGES","SET_CURRENT_REQUEST","SWAP_FILTER_OPTION","tempFilters","itemIndex","itemData","selected","SWAP_DATE_FILTER_OPTION","lastUpdated","GENERATE_PAGE_RESULTS","numberToReturn","SET_CURRENT_BOTTOM","SET_CURRENT_PAGE","SET_MODAL_SHOWING","SET_MODAL_CONTENT","SET_FETCHING_NEW_PAGE","RESET_ALL_PAGES","SET_TOTAL_PAGES","SET_COLLECTION_ID","cancel","cancelTokenSource","axiosMain","CancelToken","source","start_time","Date","getTime","responseData","item","index","all_pages","request_time","searchArticles","allFiltersOnSidebar","allSelectedItems","findAllSelectedItems","searchAdditionalArticles","pageNumber","setIsFetchingArticles","setArticlesFromExternalSource","setLoadingFromExternalSource","setFetchingArticles","generateAndSetFilterOptions","filter_options","generateFilterOptions","last_updated_counts","calculateCountsByDate","generateLastUpdatedFilters","updateSortingOption","updateCurrentPage","updateModalShowingState","resetAllPages","updateModalContent","setTotalResults","setFetchingNewPage","setAllPagesCount","setCollectionId","filtersService","getFiltersForQuery","filtersModule","isOpen","firstFetch","apiCallTimeout","currentFilters","selectedFilters","getCurrentFilters","getSelectedFilters","getFiltersSidebarOpenState","SET_FILTER_RESULTS","SET_SIDEBAR_OPEN","SET_SELECT_FILTER_RESULTS","SET_FIRST_FETCHED","RESET_ALL_SELECTED_FILTERS","SELECT_FILTER_ITEM","allItems","label","SELECT_FILTER_ITEM_BACKUP","CLEAR_SELECTED_FILTERS","allKeys","getFilters","searchParameters","updatedResults","findMatchBetweenSelectedFiltersAndCurrentFilters","allAgenciesList","allAgencies","itemCount","parseInt","replace","splitItems","splitItem","finalResults","entries","toLocaleString","sortItems","sorted_finalResults","sort","a","b","toString","join","selectItem","payloadItem","clearFilters","clearAllFilters","setLoadingStatusFiltersSidebar","resetAllSelectedFiltersSidebar","openFiltersSidebar","releaseModal","releaseContent","savedSearchName","allStates","allCountries","allAlertTypes","allSectorTypes","allTags","allSubTypeClassification","allHigher_order_alert_classification","getSearchValue","getCurrentSearchOptions","getSavedSearchName","getShowingModal","getReleaseModal","getreleaseContent","getStatus","getClassifications","getFilingType","getFederalRegister","getRegAlyticsAlertId","getSec_release_number","getDocketFileNumber","getOrder_Notice_Id","getFederalRegisterNumber","getLatestUpdate","getOriginallyPublished","getProposedCommentsDue","getRuleEffective","getPublishedInFederalReserve","getStateTags","getCountryTags","getAgencyTags","getAlertTypeTags","getSectorTypeTags","getTags","getSubTypeClassification","getHigher_order_alert_classification","getCurrentResults","getAllFilters","getAllStates","getAllCountries","getAllAgencies","getAllAlertTypes","getAllSectorTypes","getAllTags","getAllSubTypeClassification","getAllHigher_order_alert_classification","getAllIncludeKeywords","getAllOrIncludeKeywords","getAllExcludesKeywords","SET_SEARCH_VALUE","SET_SAVED_SEARCH_NAME","SET_MODAL_RELEASE","SET_releaseContent","SET_STATUS_VALUES","SET_CLASSIFICATION_VALUES","SET_FILING_TYPE_VALUES","SET_FEDERAL_REGISTER_VALUES","SET_REGALYTICS_ALERT_ID","SET_Docket_File_Number","SET_Sec_release_number","SET_Order_Notice_Id","SET_FEDERAL_REGISTER_NUMBER","SET_STARTING_DATE_LATEST_UPDATE","SET_ENDING_DATE_LATEST_UPDATE","SET_STARTING_DATE_ORIGINALLY_PUBLISHED","SET_ENDING_DATE_ORIGINALLY_PUBLISHED","SET_STARTING_DATE_PROPOSED_COMMENTS_DUE","SET_ENDING_DATE_PROPOSED_COMMENTS_DUE","SET_STARTING_DATE_RULE_EFFECTIVE","SET_ENDING_DATE_RULE_EFFECTIVE","SET_STARTING_DATE_PUBLISHED_IN_FEDERAL_RESERVE","SET_ENDING_DATE_PUBLISHED_IN_FEDERAL_RESERVE","ADD_ITEM_TO_STATES","ADD_ITEM_TO_COUNTRIES","ADD_ITEM_TO_AGENCIES","ADD_ITEM_TO_ALERT_TYPES","ADD_ITEM_TO_SECTOR_TYPES","ADD_ITEM_TO_TAGS","ADD_ITEM_TO_SUB_TYPE_CLASSIFICATION","ADD_ITEM_TO_HIGHER_ORDER_ALERT_CLASSIFICATION","SET_SEARCH_RESULTS","RESET_SEARCH_FILTERS","SET_ALL_SEARCH_OPTIONS_VIA_BLOB","SET_ALL_STATES","SET_ALL_COUNTRIES","SET_ALL_AGENCIES","SET_ALL_ALERT_TYPES","SET_ALL_SECTOR_TYPES","SET_ALL_TAGS","SET_ALL_SUB_TYPE_CLASSIFICATION","SET_ALL_HIGHER_ORDER_ALERT_CLASSIFICATION","SET_INCLUDE_KEYWORDS","SET_OR_INCLUDE_KEYWORDS","SET_EXCLUDE_KEYWORDS","updateAllSearchOptions","setSavedSearchName","updateModalReleaseState","update_user_release","updatereleaseContent","updateModalReleaseStateList","updateSearchValue","updateStatusValues","updateClassificationValues","updateFilingTypeValues","updateInFederalRegisterValue","updateRegAlyticsAlertId","updateDocket_File_Number","updateSec_release_number","updateOrder_Notice_Id","updateFederalRegisterNumber","updateLatestUpdateDateStart","updateLatestUpdateDateEnd","updateOriginallyPublishedDateStart","updateOriginallyPublishedDateEnd","updateProposedCommentsDueDateStart","updateProposedCommentsDueDateEnd","updateRuleEffectiveDateStart","updateRuleEffectiveDateEnd","updatePublishedInFederalReserveDateStart","updatePublishedInFederalReserveDateEnd","updateStates","updateCountries","updateAgencies","updateAlertTypes","updateSectorTypes","updateTags","updateSubTypeClassification","updateHigherOrderAlertClassification","resetSearchFilters","getSearchResults","currentValues","getAllOptionsForAdvancedSearch","setAllStates","setAllCountries","setAllAgencies","setAllAlertTypes","setAllSectorTypes","setAllTags","setAllSubTypeClassification","setAllHIGHEROrderAlertClassification","setIncludeKeywords","setOrIncludeKeywords","setExcludeKeywords","filtersSidebarModule","getSidebarState","SWAP_SIDEBAR_STATE","MANUALLY_SET_SIDEBAR_STATE","openOrCloseSidebar","manuallySetSidebarState","getAllUserCollections","getCuratedCollections","getCompanyCollections","collectionsModule","addingCollection","countLoad","allCollections","allCuratedCollections","allCompanyCollections","returnAllCollections","returnAllCuratedCollections","returnAllCompanyCollections","returnIfOpen","returnAddingCollection","returnIsLoading","returnCountIsLoading","returnCollectionItem","SWAP_COLLECTION_OPEN","SWAP_SHOWING_MODAL","SWAP_RELEASE_MODAL","SWAP_ADDING_COLLECTION","UPDATE_ALL_COLLECTIONS","UPDATE_ALL_CURATED_COLLECTIONS","UPDATE_ALL_COMPANY_COLLECTIONS","UPDATE_ALL_COLLECTIONS_COUNTS","map","v","k","count_data","filter","resp","UPDATE_IS_LOADING","UPDATE_COUNT_LOAD","UPDATE_COLLECTION_ITEM","openOrCloseCollection","setShowingModal","setReleaseNotesModal","setCountLoad","swapAddingCollection","setIsLoading","fetchAllUserCollections","fetchAllCuratedCollections","fetchAllCompanyCollections","fetchAllCounts","setCollectionItem","checkForPinnedArticleRedirect","success","search","pinnedUrl","pathname","history","replaceState","searchValues","getAllUrlParamsOnLoad","removeUserCollectionById","itemId","editSavedSearchModule","savedItemDetails","previousState","previousSearchValue","previousUrl","getSavedItemDetails","SET_IS_LOADING","SET_SAVED_ITEM_DETAILS","parameters","SET_PREVIOUS_STATE","setPreviousState","setSavedItemDetails","updateSavedSearch","tempParams","URLSearchParams","delete","put","allFilters","finalFilters","savedSearchId","applicationModule","isMobile","windowHeight","showingSupportModal","showingAccountModal","getSupportModal","getAccountModal","getIsMobile","getWindowHeight","SWAP_LOADING_STATE","SET_SUPPORT_MODAL","SET_ACCOUNT_MODAL","SET_IS_MOBILE","SET_WINDOW_HEIGHT","setApplicationLoadingState","setSupportModal","setAccountModal","setIsMobile","setWindowHeight","foldersModule","allFolders","currentFolderData","downloadingReport","getFolderModalOpen","getIsLoadingFolders","getAllFolders","getCurrentFolderData","getIsDownloadReport","SET_ALL_FOLDERS","ADD_TO_FOLDERS","SET_CURRENT_FOLDER_DATA","SET_CURRENT_FOLDER_STATUS","indexFolder","REMOVE_ARTICLE_FROM_FOLDER","articleIndex","RESET_FOLDER_DATA","SET_IS_DOWNLOAD_REPORT","fetchAllFolders","folders","isEdit","update_folder_flag","addNewFolder","folderName","folder","folderId","deleteFolder","folder_id","fetchFolderData","addArticleToFolder","regalyticsAlertId","regalytics_alert_id","removeArticleFromFolder","downloadArticlesFromFolder","taskId","root","checkReportStatus","taskStatus","task_status","task_id","downloadFile","responseType","fileDownload","isDownloading","resetArticleFolderData","updateFolderName","tooltipModule","tooltips","UPDATE_TOOLTIPS","update_tooltips","setItem","JSON","stringify","Vue","use","Vuex","Store","dashboard","messages","accounts","sidebar","collections","editSavedSearch","application","tooltip","VueRouter","routes","path","beforeEnter","to","from","next","checkUserAuthentication","responseCode","accountDetails","license_type","stripe_status","children","base","process","generateAgencies","agency_list","country_list","today","lastWeek","lastMonth","commentsDue","tomorrow","nextWeek","nextMonth","allStatus","allClassifications","allFilingTypes","allInFederalRegisters","allAlerts","generate_agencies_countries","agencies_res","countries_res","calculateMatchingItems","finalFilter","itemsArray","values","reduce","reverse","returnSelectedItems","final_list","allArticles","filteredArticlesByDate","seventhDay","setDate","getDate","thirtyDays","articlesDate","latest_update","currentDate","getUTCDay","getUTCMonth","getUTCFullYear","selectedAgencies","selectedCountries","selectedAlertTypes","selectedClassification","selectedFilingType","selectedInFederalRegister","selectedLastUpdated","selectedCommentsDue","selectedStatus","selectedSectorTypes","selectedTags","selectedSubtype_classification","selectedHigher_order_alert_classification","selectedAgencyObj","selectedCountryObj","selectedAlertTypeObj","selectedClassificationObj","selectedFilingTypeObj","selectedInFederalRegisterObj","selectedLastUpdatedObj","selectedLastCommentsDueObj","selectedStatusObj","selectedSectorTypeObj","selectedTagsObj","selectedSubtype_classificationObj","selectedHigher_order_alert_classificationObj","newSelectedFilters","isThemeLoading","_e","components","LoadingOverlay","computed","mapGetters","defaultColor","methods","hexToRgb","hex","exec","g","forceUpdateColor","newColor","rgb","rgbString","documentElement","style","setProperty","variables","appPrimary","getComputedStyle","getPropertyValue","bsGreenRgb","primaryBase","hostname","params","domain","sidebar_logo_url","sidebar_name","primary_color","delay","test","color","fetchThemeFromAPI","updateTheme","mounted","$router","beforeEach","TrackingHelper","constructor","app","$store","_watchRouteChange","previousPage","websiteUrl","_captureFirstRoute","_router","nextRoute","routeName","analytics","page","referrer","startRoute","current","identify","company","license","reset","eventName","track","config","productionTip","$http","vSelect","Sentry","dsn","tracingOptions","trackComponents","integrations","Integrations","BrowserTracing","tracesSampleRate","h","App","$mount","$tracking","addOrUpdateParameter","has","append","trim","resetUrlParams","newUrl","stringToBoolean","stringValue","toLowerCase","Boolean","decodeURI","providedSearchParams","tempSearchOptions","parse","statesList","countriesList","agenciesList","alertTypes","includeKeywords","orIncludeKeywords","excludeKeywords","api_url","baseURL","client","refreshAuthLogic","failedRequest","createAuthRefreshInterceptor","statusCodes","pauseInstanceWhileRefreshing","sidebarLogoUrl","require","Spinner","getItem"],"mappings":"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","file":"js/app.fa1bd03a.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0691510a\":\"8c3e29d7\",\"chunk-1d32a7df\":\"fdb1bb55\",\"chunk-2882bc16\":\"6c8f004d\",\"chunk-2d0d784a\":\"e3eaeb2d\",\"chunk-2d0d7a16\":\"5af9bbe8\",\"chunk-3bb60b01\":\"0a106346\",\"chunk-520b47ea\":\"21e44622\",\"chunk-650a3c96\":\"0acd44a2\",\"chunk-68b474ca\":\"7215ed28\",\"chunk-6f19f806\":\"676dd32d\",\"chunk-70eaef74\":\"70cff5a3\",\"chunk-76e620ee\":\"baba83b8\",\"chunk-7bddb42a\":\"50929b9b\",\"chunk-8db227da\":\"06eece52\",\"chunk-96ee91f2\":\"659e114f\",\"chunk-ac389e30\":\"aa811003\",\"chunk-4f657fd2\":\"0f39792d\",\"chunk-061ac1ab\":\"1d37f2f7\",\"chunk-50c62a5d\":\"5db8ce10\",\"chunk-0576d818\":\"640118c5\",\"chunk-6f9adb8c\":\"f361b426\",\"chunk-5418815f\":\"9bd7fbc0\",\"chunk-b40b62ea\":\"1bad7657\",\"chunk-c6632a2c\":\"59c77a47\",\"chunk-e4e6dcec\":\"499342ca\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-0691510a\":1,\"chunk-1d32a7df\":1,\"chunk-2882bc16\":1,\"chunk-520b47ea\":1,\"chunk-68b474ca\":1,\"chunk-6f19f806\":1,\"chunk-70eaef74\":1,\"chunk-76e620ee\":1,\"chunk-7bddb42a\":1,\"chunk-8db227da\":1,\"chunk-96ee91f2\":1,\"chunk-4f657fd2\":1,\"chunk-061ac1ab\":1,\"chunk-50c62a5d\":1,\"chunk-0576d818\":1,\"chunk-6f9adb8c\":1,\"chunk-5418815f\":1,\"chunk-b40b62ea\":1,\"chunk-c6632a2c\":1,\"chunk-e4e6dcec\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0691510a\":\"5700f04f\",\"chunk-1d32a7df\":\"864f089c\",\"chunk-2882bc16\":\"0017b81d\",\"chunk-2d0d784a\":\"31d6cfe0\",\"chunk-2d0d7a16\":\"31d6cfe0\",\"chunk-3bb60b01\":\"31d6cfe0\",\"chunk-520b47ea\":\"953a2ac3\",\"chunk-650a3c96\":\"31d6cfe0\",\"chunk-68b474ca\":\"23676bb4\",\"chunk-6f19f806\":\"2e9551d5\",\"chunk-70eaef74\":\"ee731729\",\"chunk-76e620ee\":\"5516e785\",\"chunk-7bddb42a\":\"a438a249\",\"chunk-8db227da\":\"a2614073\",\"chunk-96ee91f2\":\"0379a645\",\"chunk-ac389e30\":\"31d6cfe0\",\"chunk-4f657fd2\":\"b8433111\",\"chunk-061ac1ab\":\"503ce2bc\",\"chunk-50c62a5d\":\"f659976e\",\"chunk-0576d818\":\"922d8550\",\"chunk-6f9adb8c\":\"3476ca92\",\"chunk-5418815f\":\"20fb776b\",\"chunk-b40b62ea\":\"ca17afa7\",\"chunk-c6632a2c\":\"7e6dd81a\",\"chunk-e4e6dcec\":\"2e1ac4d6\"}[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\";\nimport store from \"@/store\";\n\n\nexport const articleService = {\n getArticles,\n getArticlesByFilters,\n getAllStatesAgenciesAndAlertTypes,\n getTooltips,\n updateCountForCollection\n}\n\n\n// Get's \"all articles\" from the API -> Will be limited\n// Can limit based on a users limits for their account\nfunction getArticles(currentToken, currentPage) {\n // return axios.get(`/articles/all?page=${currentPage}`, { withCredentials: true, cancelToken: currentToken.token })\n // .then(articles => {\n // return articles;\n // });\n\n return axios.post(`/articles/filter?page=${currentPage}`, {\n searchFilters: {\n status: { new: false, updated: false },\n classification: {\n sro: false,\n federal: false,\n state: false,\n territory: false,\n county: false,\n international: false,\n multinational: false,\n },\n filingType: { single: false, joint: false },\n inFederalRegister: {\n yes: false,\n not_yet: false,\n not_expected: false,\n },\n regAlyticsAlertId: \"\",\n sec_release_number: \"\",\n docket_file_number: \"\",\n order_notice: \"\",\n federalRegisterNumber: \"\",\n state: [],\n agency: [],\n country: [],\n alertType: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n includes: [],\n orIncludes: [],\n excludes: [],\n latestUpdate: { start: null, end: null },\n originallyPublished: { start: null, end: null },\n proposedCommentsDue: { start: null, end: null },\n ruleEffective: { start: null, end: null },\n publishedInFederalReserve: { start: null, end: null },\n },\n searchValue: \"\",\n filters: {\n status: [],\n agencies: [],\n alert_type: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n classification: [],\n filing_type: [],\n in_federal_register: [],\n last_updated: [\"Last 90 Days\"],\n comments_due: [],\n states: [],\n countries: [],\n },\n sortBy: {},\n }, { withCredentials: true, cancelToken: currentToken.token }\n );\n}\n\nfunction getTooltips() {\n return axios.get(`/articles/fetch-tooltips`, { withCredentials: true })\n .then(articles => {\n return articles;\n });\n}\n\n\n// getArticlesByFilters will get all articles by the search\n// parameters provided from the state\nfunction getArticlesByFilters(currentToken, currentPage, searchFilters, searchValue, selectedItems, filteredBy) {\n let url = `/articles/filter?page=${currentPage}`;\n let collectionItem = store.getters[\"collections/returnCollectionItem\"];\n let current_url = new URL(window.location.href);\n var last_viewed = current_url.searchParams.get(\"last_viewed\");\n\n if (collectionItem) {\n\n url = `/articles/filter?page=${currentPage}&last_viewed=${collectionItem.modified}`;\n } else if (last_viewed) {\n\n url = `/articles/filter?page=${currentPage}&last_viewed=${last_viewed}`;\n }\n\n return axios.post(url, {\n searchFilters: searchFilters,\n searchValue: searchValue,\n filters: selectedItems,\n sortBy: filteredBy\n }, {\n withCredentials: true,\n cancelToken: currentToken.token\n })\n}\n\n// Update Articles Count for user collection\n// parameters provided from the state\n// Updates the last viewed date for a users collection\nfunction updateCountForCollection(collection_id, count, currentToken) {\n return axios.post('/collections/update', {\n id: collection_id,\n count: count\n }, {\n withCredentials: true,\n cancelToken: currentToken.token\n })\n}\n\n\n// Gets all States, Agencies and Alert Types\nexport function getAllStatesAgenciesAndAlertTypes() {\n return axios.get('/articles/all-search-options', {\n withCredentials: true\n });\n}\n\nexport function logViewedArticle(articleId) {\n return axios.post('/telemetry/viewed', {\n article_id: articleId\n }, { withCredentials: true });\n}\n\nexport function fetch_related_articles(articleId) {\n return axios.get('/collections/related/' + articleId, {}, { withCredentials: true });\n}\n\nexport function logSearchHistory() {\n const searchValue = store.getters[\"search/getSearchValue\"];\n const searchFilters = store.getters[\"search/getAllFilters\"];\n const totalResults = store.getters[\"articles/getTotalResults\"];\n\n return axios.post('/telemetry/searched', {\n search_value: searchValue,\n search_options: searchFilters,\n total_results: totalResults\n }, { withCredentials: true });\n}\n\nexport function generate_base_article_url() {\n const host = window.location.origin; // Gets the base URL including protocol (e.g., http://chat.open.com)\n return `${host}/dashboard/articles`;\n}\n\n// KEEP - Used for resetting the Vuex state in parts of the application\nexport const defaultSearchOptions = {\n status: {\n new: false,\n updated: false\n },\n\n classification: {\n sro: false,\n federal: false,\n state: false,\n territory: false,\n county: false,\n international: false,\n multinational: false\n\n },\n\n filingType: {\n single: false,\n joint: false\n },\n\n inFederalRegister: {\n yes: false,\n not_yet: false,\n not_expected: false\n },\n\n regAlyticsAlertId: '',\n federalRegisterNumber: '',\n sec_release_number: '',\n docket_file_number: '',\n order_notice: '',\n\n // Will use an array for Region, Agency & Alert Type\n // as a user can search with multiple different values\n state: [],\n country: [],\n agency: [],\n alertType: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n includes: [],\n orIncludes: [],\n excludes: [],\n\n // Date searching for our filters\n // All have a starting-to date\n latestUpdate: {\n start: null,\n end: null\n },\n\n originallyPublished: {\n start: null,\n end: null\n },\n\n proposedCommentsDue: {\n start: null,\n end: null\n },\n\n ruleEffective: {\n start: null,\n end: null\n },\n\n publishedInFederalReserve: {\n start: null,\n end: null\n }\n}\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"spinner-border text-green\",attrs:{\"role\":\"status\"}},[_c('span',{staticClass:\"visually-hidden\"},[_vm._v(\"Loading...\")])])\n}]\n\nexport { render, staticRenderFns }","\n \n Loading...\n
\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=1a8cf0f7&scoped=true\"\nimport script from \"./Spinner.vue?vue&type=script&lang=js\"\nexport * from \"./Spinner.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1a8cf0f7\",\n null\n \n)\n\nexport default component.exports","export enum LayoutStyle {\n MAX = \"max\",\n MIN = \"min\"\n}\n","import {DashboardStyle} from \"@/types/dashboard/DashboardStyle\";\nimport {Commit} from \"vuex\";\nimport {LayoutStyle} from \"@/types/dashboard/LayoutStyle\";\n\nexport const dashboardModule = {\n namespaced: true,\n\n state: {\n dashboardStyle: {\n pinned: false,\n class: 'dashboard-wrapper-min',\n type: 'min'\n } as DashboardStyle\n },\n\n getters: {\n\n getDashboardStyle: (state: { dashboardStyle: DashboardStyle; }) => {\n return state.dashboardStyle;\n }\n\n },\n\n mutations: {\n\n SET_DASHBOARD_STYLE_CLASS(state: { dashboardStyle: DashboardStyle }, payload: string) {\n state.dashboardStyle.class = payload;\n },\n\n SET_DASHBOARD_STYLE_TYPE(state: { dashboardStyle: DashboardStyle }, payload: string) {\n state.dashboardStyle.type = payload;\n },\n\n SET_DASHBOARD_PINNED(state: { dashboardStyle: DashboardStyle }, payload: boolean) {\n state.dashboardStyle.pinned = payload;\n }\n\n\n },\n\n actions: {\n\n // Sets the dashboard layout style for the Vertical navigation\n setDashboardStyleClass({commit}: { commit: Commit }, value: LayoutStyle) {\n const styles = ['dashboard-wrapper-full', 'dashboard-wrapper-min'];\n switch (value) {\n case LayoutStyle.MAX:\n commit('SET_DASHBOARD_STYLE_CLASS', styles[0]);\n commit('SET_DASHBOARD_STYLE_TYPE', 'max');\n break;\n case LayoutStyle.MIN:\n commit('SET_DASHBOARD_STYLE_CLASS', styles[1]);\n commit('SET_DASHBOARD_STYLE_TYPE', 'min');\n break;\n default:\n break;\n }\n },\n\n setDashboardPinned({commit}: { commit: Commit }, value: boolean) {\n commit('SET_DASHBOARD_PINNED', value);\n }\n\n },\n\n}\n","import { v4 as uuidv4 } from 'uuid';\nimport store from '@/store';\nimport { Notification } from \"@/types/dashboard/Notification\";\nimport { Commit } from \"vuex/types\";\n\nexport const notificationsModule = {\n namespaced: true,\n\n state: {\n notifications: [] as Array,\n },\n\n getters: {\n\n getAllNotifications: (state: { notifications: Array }) => {\n return state.notifications;\n }\n\n },\n\n mutations: {\n\n ADD_TO_NOTIFICATIONS(state: { notifications: Array }, payload: Notification) {\n state.notifications.unshift({\n id: payload.id,\n message: payload.message,\n type: payload.type,\n autoHide: payload.autoHide || true\n });\n },\n\n REMOVE_FROM_NOTIFICATIONS(state: { notifications: Array }, notificationId: string) {\n const notificationIndex = state.notifications.findIndex(x => x.id === notificationId);\n state.notifications.splice(notificationIndex, 1);\n },\n\n CLEAR_NOTIFICATIONS(state: { notifications: Array }) {\n state.notifications = []\n },\n\n },\n\n actions: {\n pushNotification({ commit }: { commit: Commit }, payload: Notification) {\n store.dispatch('notifications/addNotification', payload)\n },\n\n addNotification({ commit }: { commit: Commit }, payload: Notification) {\n const notificationId = uuidv4();\n payload.id = notificationId;\n commit('ADD_TO_NOTIFICATIONS', payload);\n let autoHide = true;\n if (payload.autoHide === false) {\n autoHide = false;\n }\n\n // Auto-removes the notification after 3 seconds\n if (autoHide) {\n return new Promise(() => {\n setTimeout(() => {\n commit('REMOVE_FROM_NOTIFICATIONS', notificationId);\n }, 3000);\n })\n }\n\n },\n\n removeNotification({ commit }: { commit: Commit }, notificationId: string) {\n commit('REMOVE_FROM_NOTIFICATIONS', notificationId);\n },\n\n clearNotification({ commit }: { commit: Commit }) {\n commit('CLEAR_NOTIFICATIONS');\n }\n\n }\n}\n","export const messageModule = {\n namespaced: true,\n\n state: {\n message: {\n type: null,\n text: null\n }\n },\n\n getters: {\n isMessage: state => {\n return state.message.text !== null;\n },\n\n getMessage: state => {\n return state.message;\n }\n },\n\n actions: {\n info({commit}, text) {\n commit('INFO', text);\n },\n\n warning({commit}, text) {\n commit('WARNING', text);\n },\n\n error({commit}, text) {\n commit('ERROR', text);\n },\n\n clear({commit}) {\n commit('CLEAR');\n }\n },\n\n mutations: {\n INFO(state, text) {\n state.message = {type: 'alert-info', text: text};\n },\n\n WARNING(state, text) {\n state.message = {type: 'alert-warning', text: text};\n },\n\n ERROR(state, text) {\n state.message = {type: 'alert-danger', text: text};\n },\n\n CLEAR(state) {\n state.message = {type: null, text: null};\n }\n }\n}\n","import {VerifyEmail} from \"@/types/account/VerifyEmail\";\nimport axios from \"@/axios\";\n\n\nexport default async function changeLicense(accessCode: string) {\n try {\n return await axios.patch('/accounts/user/upgrade', {\n access_code: accessCode\n }, { withCredentials: true });\n } catch (e) {\n return e;\n }\n}\n","import axios from \"@/axios\";\n\nexport default async function createUser(user: CreateUser) {\n return await axios.post('/accounts/user', {\n first_name: user.firstName,\n last_name: user.lastName,\n email: user.email,\n phone_number: user.phone,\n password1: user.password1,\n password2: user.password2,\n role: user.role,\n department: user.department,\n function: user.func,\n access_code: user.accessCode\n }, { withCredentials: true });\n}\n","import axios from \"@/axios\";\n\nexport default function loginUser(email: string, password: string) {\n return axios.post('/auth/token', {\n email: email,\n password: password\n }, { withCredentials: true })\n .then(r => {\n return r;\n });\n}\n","import axios from \"@/axios\";\n\nexport default async function logoutUser() {\n try {\n return await axios.post('/auth/logout', {}, {\n withCredentials: true\n });\n } catch (err) {\n return err;\n }\n}\n","import axios from \"@/axios\";\nimport {ResetPassword} from \"@/types/account/ResetPassword\";\n\nexport default async function resetPassword(userReset: ResetPassword) {\n // try {\n return await axios.patch('/accounts/user/reset-password', {\n uid: userReset.uid,\n token: userReset.token,\n password1: userReset.password1,\n password2: userReset.password2\n }, { withCredentials: true })\n // } catch (err) {\n // return err;\n // }\n}\n","import axios from \"@/axios\";\n\nexport default async function sendPasswordResetEmail(email: string) {\n // try {\n return await axios.post('/accounts/user/send/reset-password', {\n email: email\n }, { withCredentials: true });\n // } catch (e) {\n // console.log(\"ASSSSSSSSSS\", e)\n // return e;\n // }\n}\n","import axios from \"@/axios\";\nimport {SupportMessage} from \"@/types/account/SupportMessage\";\n\n\nexport default async function sendSupportMessage(supportMessage: SupportMessage) {\n try {\n return await axios.post('/accounts/support', {\n email: supportMessage.email,\n subject: supportMessage.subject,\n body: supportMessage.body\n }, { withCredentials: true })\n } catch (err) {\n return err;\n }\n}\n","import axios from \"@/axios\";\n\nexport default async function sendVerificationEmail(email: string) {\n try {\n return await axios.post('/accounts/user/send/verify-email', {\n email: email\n }, { withCredentials: true });\n } catch (err) {\n return err;\n }\n}\n","import {VerifyEmail} from \"@/types/account/VerifyEmail\";\nimport axios from \"@/axios\";\n\n\nexport default async function verifyEmail(tokenVerification: VerifyEmail) {\n try {\n return await axios.patch('/accounts/user/verify-email', {\n uid: tokenVerification.uid,\n token: tokenVerification.token\n }, { withCredentials: true });\n } catch (e) {\n return e;\n }\n}\n","import axios from \"@/axios.ts\";\nimport changeLicense from \"@/helpers/requests/accounts/changeLicense\";\nimport createUser from \"@/helpers/requests/accounts/createUser\";\nimport loginUser from \"@/helpers/requests/accounts/loginUser\";\nimport logoutUser from \"@/helpers/requests/accounts/logoutUser\";\nimport resetPassword from \"@/helpers/requests/accounts/resetPassword\";\nimport sendPasswordResetEmail from \"@/helpers/requests/accounts/sendPasswordResetEmail\";\nimport sendSupportMessage from \"@/helpers/requests/accounts/sendSupportMessage\";\nimport sendVerificationEmail from \"@/helpers/requests/accounts/sendVerificationEmail\";\nimport verifyEmail from \"@/helpers/requests/accounts/verifyEmail\";\nimport { trackingHelper } from \"@/main\";\nimport router from \"@/router\";\nimport store from \"@/store\";\nimport { ResetPassword } from \"@/types/account/ResetPassword\";\nimport { SupportMessage } from \"@/types/account/SupportMessage\";\nimport { ArticlesLayout, User } from \"@/types/account/User\";\nimport { UserLogin } from \"@/types/account/UserLogin\";\nimport { VerifyEmail } from \"@/types/account/VerifyEmail\";\nimport { Commit, Dispatch } from \"vuex\";\n\n\nexport const accountsModule = {\n namespaced: true,\n\n state: {\n status: {\n loading: false,\n },\n user: {\n id: 0,\n email: null,\n telemetry: true,\n search_highlight: true,\n jwtToken: null,\n show_release_note: null,\n name: null\n } as User,\n },\n\n getters: {\n isLoading: (state: { status: { loading: boolean }; }) => {\n return state.status.loading;\n },\n\n getCurrentUser: (state: { user: User }) => {\n return state.user;\n }\n },\n\n mutations: {\n\n SET_LOADING_STATUS(state: { status: { loading: boolean; } }, value: boolean) {\n state.status = { loading: value };\n },\n\n SET_USER_LAYOUT(state: { user: User; }, layout: ArticlesLayout) {\n state.user.articles_layout = layout;\n },\n\n SET_SEARCH_HIGHLIGHT(state: { user: User; }, search_highlight: boolean) {\n state.user.search_highlight = search_highlight;\n },\n\n LOGIN_SUCCESS(state: { status: { loading: boolean; }; user: User; }, user: User) {\n state.status = {\n loading: false,\n };\n state.user = user;\n },\n\n LOGOUT_SUCCESS(state: { user: User; }) {\n state.user = {\n id: 0,\n email: null,\n telemetry: true,\n jwtToken: null,\n name: null\n } as User;\n },\n\n SET_ACCOUNT_DETAILS(state: { user: User; }, payload: User) {\n state.user = payload;\n },\n\n SET_USERS_TOKEN(state: { user: User; }, payload: string) {\n state.user.jwtToken = payload;\n },\n\n },\n\n actions: {\n create({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }, user: CreateUser) {\n commit('SET_LOADING_STATUS', true);\n\n createUser(user)\n .then(r => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', { message: `We sent you a confirmation email to ${user.email}. Make sure to click on the link to verify your account.`, type: 'green' });\n\n const currentUserSignup = {\n firstName: user.firstName,\n lastName: user.lastName,\n email: user.email,\n phone: user.phone,\n role: user.role,\n department: user.department,\n func: user.func,\n accessCode: user.accessCode,\n trial: false\n }\n\n if (!user.accessCode) currentUserSignup.trial = true;\n trackingHelper.trackEvent('accountSignup', {\n ...currentUserSignup\n });\n\n return router.push({ name: 'ConfirmEmail' })\n })\n .catch(err => {\n commit('SET_LOADING_STATUS', false);\n if (err.response.data.non_field_errors) {\n for (const errMsg of err.response.data.non_field_errors) {\n store.dispatch('notifications/addNotification', { message: errMsg, type: 'danger', redirectTo: '' });\n }\n } else if (err.response.data.detail) {\n store.dispatch('notifications/addNotification', { message: err.response.data.detail, type: 'danger' });\n } else if (err.response.data.password) {\n err.response.data.password.forEach(function (msg: string) {\n store.dispatch('notifications/addNotification', { message: msg, type: 'danger', autoHide: false })\n });\n\n } else {\n store.dispatch('notifications/addNotification', { message: 'All fields are required for signup.', type: 'danger' });\n }\n });\n },\n\n login({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }, user: UserLogin) {\n commit('SET_LOADING_STATUS', true);\n\n loginUser(user.email, user.password)\n .then((r: { data: any; }) => {\n trackingHelper.trackUser(r.data);\n\n const userData = r.data;\n commit('LOGIN_SUCCESS', {\n id: userData.id,\n email: userData.email,\n telemetry: userData.telemetry,\n jwtToken: userData.access,\n name: userData.name\n } as User);\n axios.defaults.headers.common = { 'Authorization': `Bearer ${userData.access}` };\n router.push({ name: 'Articles' });\n })\n .then(() => {\n store.dispatch('notifications/clearNotification');\n store.dispatch('tooltip/update_tooltips');\n })\n .catch((err: { response: { data: any; }; }) => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', { message: err.response.data, type: 'danger' });\n store.dispatch('application/setApplicationLoadingState', false);\n });\n },\n\n logout({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }) {\n\n logoutUser()\n .then(r => {\n store.dispatch('application/setApplicationLoadingState', true);\n commit('LOGOUT_SUCCESS');\n\n // Removes all cookies from the Browser for the current domain\n let cookies = document.cookie.split(\";\");\n for (let i = 0; i < cookies.length; i++) {\n let cookie = cookies[i];\n let eqPos = cookie.indexOf(\"=\");\n let name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\n document.cookie = name + \"=;expires=Thu, 01 Jan 1970 00:00:00 GMT\";\n }\n\n window.localStorage.clear();\n trackingHelper.resetUser();\n localStorage.removeItem('sidebar_logo_url');\n localStorage.removeItem('sidebar_name');\n localStorage.removeItem('primary_color');\n store.dispatch('application/setApplicationLoadingState', false);\n return router.push('/login');\n })\n .catch(err => {\n // Removes all cookies from the Browser for the current domain\n let cookies = document.cookie.split(\";\");\n for (let i = 0; i < cookies.length; i++) {\n let cookie = cookies[i];\n let eqPos = cookie.indexOf(\"=\");\n let name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\n document.cookie = name + \"=;expires=Thu, 01 Jan 1970 00:00:00 GMT\";\n }\n\n window.localStorage.clear();\n trackingHelper.resetUser();\n store.dispatch('application/setApplicationLoadingState', false);\n return router.push('/login');\n });\n },\n\n sendVerificationEmail({ commit }: { commit: Commit }, email: string) {\n commit('SET_LOADING_STATUS', true);\n\n sendVerificationEmail(email)\n .then(() => {\n commit('SET_LOADING_STATUS', false);\n })\n .catch(() => {\n commit('SET_LOADING_STATUS', false);\n });\n },\n\n sendResetPasswordEmail({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }, email: string) {\n commit('SET_LOADING_STATUS', true);\n\n sendPasswordResetEmail(email)\n .then(() => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', {\n message: 'An email has been sent to reset your password!',\n type: 'green'\n });\n store.dispatch('application/setApplicationLoadingState', false);\n return new Promise(() => {\n setTimeout(() => {\n return router.push('/login');\n }, 3000);\n })\n\n })\n .catch(() => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', {\n message: 'No account found, there is no RegAlytics account with the info you provided.',\n type: 'danger',\n autoHide: false\n });\n store.dispatch('application/setApplicationLoadingState', false);\n });\n },\n\n verifyEmail({ commit }: { commit: Commit }, tokenAndUid: VerifyEmail) {\n commit('SET_LOADING_STATUS', false);\n return verifyEmail(tokenAndUid);\n },\n\n resetPassword({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }, userReset: ResetPassword) {\n console.log(userReset)\n store.dispatch('application/setApplicationLoadingState', true);\n commit('SET_LOADING_STATUS', true);\n\n resetPassword(userReset)\n .then(r => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', {\n message: 'Successfully reset your password! You can now login.',\n type: 'green'\n })\n store.dispatch('application/setApplicationLoadingState', false);\n return new Promise(() => {\n setTimeout(() => {\n return router.push('/login');\n }, 3000);\n })\n })\n .catch(err => {\n commit('SET_LOADING_STATUS', false);\n\n if (err.response.status === 400) {\n\n // if (err.response.data['non_field_errors'][0] === \"Passwords don't match.\") {\n // store.dispatch('notifications/addNotification', {\n // message: \"Passwords do not match! Please try again.\",\n // type: 'danger'\n // });\n // store.dispatch('application/setApplicationLoadingState', false);\n // } \n if (err.response.data.non_field_errors) {\n let errors = err.response.data.non_field_errors[0].split(\",\");\n errors.forEach(function (msg: string) {\n store.dispatch('notifications/addNotification', { message: msg, type: 'danger', autoHide: false })\n });\n store.dispatch('application/setApplicationLoadingState', false);\n\n }\n else {\n store.dispatch('notifications/addNotification', {\n message: 'Invalid request sent.',\n type: 'danger'\n });\n store.dispatch('application/setApplicationLoadingState', false);\n return router.push('/login');\n }\n\n }\n\n });\n },\n\n changeLicense({ dispatch, commit }: { dispatch: Dispatch; commit: Commit }, accessCode: string) {\n commit('SET_LOADING_STATUS', true);\n\n changeLicense(accessCode)\n .then(r => {\n commit('SET_LOADING_STATUS', false);\n store.dispatch('notifications/addNotification', {\n message: `Updated your license successfully!`,\n type: 'green'\n });\n return dispatch('articles/setLoadingFromExternalSource', false);\n })\n .catch(err => {\n store.dispatch('notifications/addNotification', {\n message: `${err.response.data.detail}`,\n type: 'danger'\n });\n commit('SET_LOADING_STATUS', false);\n });\n },\n\n sendSupportMessage({ commit }: { commit: Commit }, supportMessage: SupportMessage) {\n\n sendSupportMessage(supportMessage)\n .then(r => {\n commit('SET_LOADING_STATUS', false);\n })\n .catch(err => {\n commit('SET_LOADING_STATUS', false);\n })\n },\n\n updateLoading({ commit }: { commit: Commit }) {\n commit('SET_LOADING_STATUS', false);\n },\n\n setAccountDetails({ commit }: { commit: Commit }, payload: User) {\n commit('SET_ACCOUNT_DETAILS', payload);\n },\n\n setUsersToken({ commit }: { commit: Commit }, payload: string) {\n commit('SET_USERS_TOKEN', payload);\n },\n\n setUserLayout({ commit }: { commit: Commit }, layout: ArticlesLayout) {\n commit('SET_USER_LAYOUT', layout);\n },\n\n setSearchHighlight({ commit }: { commit: Commit }, search_highlight: boolean) {\n commit('SET_SEARCH_HIGHLIGHT', search_highlight);\n }\n\n\n\n }\n};\n","import {articleService, logSearchHistory} from \"@/store/services/articleService\";\nimport store from \"@/store\";\nimport {calculateCountsByDate, findAllSelectedItems, generateFilterOptions} from \"@/helpers/filtersHelper\";\nimport axiosMain from \"axios\";\n\nexport const articlesModule = {\n namespaced: true,\n\n state: {\n status: {},\n isLoading: false,\n currentRequest: null,\n isFetchingArticles: false,\n filterOptions: {},\n filteredBy: 'newest',\n lastUpdatedCount: {\n today_count: null,\n week_count: null,\n month_count: null\n },\n\n results: {},\n totalResults: 0,\n filteredResults: {},\n resultsByPage: [],\n currentBottom: 0,\n currentPage: 1,\n fetchingNewPage: false,\n allPages: 0,\n\n // Details for an article modal\n showingModal: false,\n modalDetails: {},\n collection_id:null\n },\n\n getters: {\n // Getter for if the articles are still being fetched\n getIsLoading: state => {\n return state.isLoading;\n },\n\n getIsFilteredBy: state => {\n return state.filteredBy;\n },\n\n getIsFetchingArticles: state => {\n return state.isFetchingArticles;\n },\n\n getTotalResults: state => {\n return state.totalResults;\n },\n\n getIsShowingModal: state => {\n return state.showingModal;\n },\n\n getModalDetails: state => {\n return state.modalDetails;\n },\n\n getResults: state => {\n return state.results;\n },\n\n getResultsByPage: state => {\n return state.resultsByPage;\n },\n\n getCurrentPage: state => {\n return state.currentPage;\n },\n\n // Returns the bottom pixel of the Articles container DIV\n getCurrentBottom: state => {\n return state.currentBottom;\n },\n\n getArticlesCount: state => {\n return state.filteredResults.length;\n },\n\n getAllPages: state => {\n return state.allPages;\n },\n\n // Returns the filter options\n getFilterOptions: state => {\n return state.filterOptions;\n },\n\n getLastUpdateCounts: state => {\n return state.lastUpdatedCount;\n },\n\n getFetchingNewPage: state => {\n return state.fetchingNewPage;\n },\n\n getCollectionID: state => {\n return state.collection_id;\n }\n\n },\n\n mutations: {\n SET_RESULTS(state, payload) {\n state.results = payload;\n },\n\n ADD_TO_RESULTS(state, payload) {\n let newList = state.results.concat(payload);\n state.results = newList;\n },\n\n SET_IS_FILTERED_BY(state, payload) {\n state.filteredBy = payload;\n },\n\n SET_IS_FETCHING_ARTICLES(state, payload) {\n state.isFetchingArticles = payload;\n },\n\n SET_FILTERED_RESULTS(state, payload) {\n state.filteredResults = payload;\n },\n\n SET_TOTAL_RESULTS(state, payload) {\n state.totalResults = payload;\n },\n\n SET_LOADING_STATUS(state, payload) {\n state.isLoading = payload;\n },\n\n SET_FILTER_OPTIONS(state, payload) {\n state.filterOptions = payload;\n },\n\n SET_LAST_UPDATE_COUNTS(state, payload) {\n state.lastUpdatedCount = {...payload};\n },\n\n SET_ALL_PAGES(state, payload) {\n state.allPages = payload;\n },\n\n SET_CURRENT_REQUEST(state, payload) {\n state.currentRequest = payload;\n },\n\n SWAP_FILTER_OPTION(state, payload) {\n let tempFilters = {...state.filterOptions};\n\n // Update the temp filters data\n const itemIndex = tempFilters[payload.key].findIndex(x => x.name === payload.data.name);\n\n // Find the item by index and update its data\n let itemData = {...tempFilters[payload.key][itemIndex]};\n itemData.selected = !itemData.selected;\n\n // Update the tempFilters object to contain the new value\n tempFilters[payload.key][itemIndex] = itemData;\n state.filterOptions = tempFilters;\n },\n\n // Updates our filter options based on state\n SWAP_DATE_FILTER_OPTION(state, payload) {\n let tempFilters = {...state.filterOptions};\n tempFilters.lastUpdated = payload;\n state.filterOptions = tempFilters;\n },\n\n GENERATE_PAGE_RESULTS(state, payload) {\n const numberToReturn = (25 * payload);\n state.resultsByPage = state.filteredResults.slice(0, numberToReturn);\n },\n\n SET_CURRENT_BOTTOM(state, payload) {\n state.currentBottom = payload;\n },\n\n SET_CURRENT_PAGE(state, payload) {\n state.currentPage = payload;\n },\n\n SET_MODAL_SHOWING(state, payload) {\n state.showingModal = payload;\n },\n\n SET_MODAL_CONTENT(state, payload) {\n state.modalDetails = payload;\n },\n\n SET_FETCHING_NEW_PAGE(state, payload) {\n state.fetchingNewPage = payload;\n },\n\n RESET_ALL_PAGES(state) {\n state.allPages = 0;\n },\n\n SET_TOTAL_PAGES(state, payload) {\n state.allPages = payload;\n },\n\n SET_COLLECTION_ID(state, payload) {\n state.collection_id = payload;\n }\n\n },\n\n actions: {\n\n // Gets all articles\n getArticles({commit, state}) {\n\n // Cancels the current request if exists\n if (state.currentRequest) {\n state.currentRequest.cancel();\n }\n\n // Create a token for cancelling requests\n const cancelTokenSource = axiosMain.CancelToken.source();\n commit('SET_CURRENT_REQUEST', cancelTokenSource);\n\n commit('SET_IS_FETCHING_ARTICLES', true);\n let start_time = new Date().getTime();\n store.dispatch('filters/getFilters');\n store.dispatch('tooltip/update_tooltips');\n articleService.getArticles(cancelTokenSource, state.currentPage)\n .then(response => {\n commit('SET_CURRENT_REQUEST', null);\n // Builds the response in the format we require for the front-end\n let responseData = response.data.results;\n\n responseData.forEach((item, index) => {\n let alertType = ''\n if (item.alert_type) {\n alertType = item.alert_type;\n\n }\n\n responseData[index].alert_type = alertType;\n\n });\n\n commit('SET_RESULTS', responseData);\n commit('SET_TOTAL_RESULTS', response.data.count);\n commit('SET_ALL_PAGES', response.data.all_pages);\n commit('SET_IS_FETCHING_ARTICLES', false);\n })\n .then(() => {\n let request_time = new Date().getTime() - start_time;\n console.log(`Total time taken: ${request_time}`);\n })\n .catch(() => {\n commit('SET_CURRENT_REQUEST', null);\n });\n },\n\n searchArticles({commit, state}) {\n\n // Cancels the current request if exists\n if (state.currentRequest) {\n state.currentRequest.cancel();\n }\n\n // Create a token for cancelling requests\n const cancelTokenSource = axiosMain.CancelToken.source();\n commit('SET_CURRENT_REQUEST', cancelTokenSource);\n\n store.dispatch('application/setApplicationLoadingState', false);\n commit('SET_IS_FETCHING_ARTICLES', true);\n let start_time = new Date().getTime();\n const allFiltersOnSidebar = store.getters[\"filters/getSelectedFilters\"];\n const allSelectedItems = findAllSelectedItems(allFiltersOnSidebar);\n\n const searchValue = store.getters[\"search/getSearchValue\"];\n const searchFilters = store.getters[\"search/getAllFilters\"];\n const filteredBy = state.filteredBy;\n const collection_id = state.collection_id\n store.dispatch('filters/getFilters');\n articleService.getArticlesByFilters(cancelTokenSource, state.currentPage, searchFilters, searchValue, allSelectedItems, filteredBy)\n .then(response => {\n\n commit('SET_CURRENT_REQUEST', null);\n\n // Builds the response in the format we require for the front-end\n let responseData = response.data.results;\n\n responseData.forEach((item, index) => {\n\n let alertType = ''\n\n if (item.alert_type) {\n alertType = item.alert_type;\n }\n\n responseData[index].alert_type = alertType;\n\n });\n if(collection_id!=null){\n articleService.updateCountForCollection(collection_id,response.data.count,cancelTokenSource)\n }\n commit('SET_RESULTS', responseData);\n commit('SET_TOTAL_RESULTS', response.data.count);\n commit('SET_ALL_PAGES', response.data.all_pages);\n commit('SET_IS_FETCHING_ARTICLES', false);\n commit('SET_COLLECTION_ID', null);\n })\n .then(() => {\n logSearchHistory();\n let request_time = new Date().getTime() - start_time;\n console.log(`Total time taken: ${request_time}`);\n })\n .catch(() => {\n commit('SET_CURRENT_REQUEST', null);\n });\n },\n\n // Used for pagination on Articles\n searchAdditionalArticles({commit, state}, pageNumber) {\n\n // Cancels the current request if exists\n if (state.currentRequest) {\n state.currentRequest.cancel();\n }\n\n // Create a token for cancelling requests\n const cancelTokenSource = axiosMain.CancelToken.source();\n commit('SET_CURRENT_REQUEST', cancelTokenSource);\n\n commit('SET_FETCHING_NEW_PAGE', true);\n let start_time = new Date().getTime();\n const allFiltersOnSidebar = store.getters[\"filters/getSelectedFilters\"];\n const allSelectedItems = findAllSelectedItems(allFiltersOnSidebar);\n\n const searchValue = store.getters[\"search/getSearchValue\"];\n const searchFilters = store.getters[\"search/getAllFilters\"];\n const filteredBy = state.filteredBy;\n articleService.getArticlesByFilters(cancelTokenSource, pageNumber, searchFilters, searchValue, allSelectedItems, filteredBy)\n .then(response => {\n commit('SET_CURRENT_REQUEST', null);\n // Builds the response in the format we require for the front-end\n let responseData = response.data.results;\n\n responseData.forEach((item, index) => {\n let alertType = ''\n if (item.alert_type) {\n alertType = item.alert_type;\n }\n\n responseData[index].alert_type = alertType;\n });\n\n commit('ADD_TO_RESULTS', responseData);\n commit('SET_IS_FETCHING_ARTICLES', false);\n commit('SET_FETCHING_NEW_PAGE', false);\n })\n .then(() => {\n let request_time = new Date().getTime() - start_time;\n console.log(`Total time taken: ${request_time}`);\n })\n .catch(() => {\n commit('SET_CURRENT_REQUEST', null);\n commit('SET_FETCHING_NEW_PAGE', false);\n });\n },\n\n setIsFetchingArticles({commit}, value) {\n commit('SET_IS_FETCHING_ARTICLES', value);\n },\n\n // Sets the articles from an external source\n setArticlesFromExternalSource({commit}, value) {\n commit('SET_RESULTS', value);\n },\n\n // Sets the loading state in the articles container\n setLoadingFromExternalSource({commit}, value) {\n commit('SET_LOADING_STATUS', value);\n },\n\n setFetchingArticles({commit}, value) {\n commit('SET_IS_FETCHING_ARTICLES', value);\n },\n\n // Generates and sets the filtering options for the sidebar\n generateAndSetFilterOptions({commit, state}) {\n try {\n const filter_options = generateFilterOptions(state.results);\n const last_updated_counts = calculateCountsByDate(state.results);\n commit('SET_CURRENT_BOTTOM', 0);\n commit('SET_CURRENT_PAGE', 1);\n commit('SET_FILTER_OPTIONS', filter_options);\n commit('SET_LAST_UPDATE_COUNTS', last_updated_counts);\n } catch (e) {\n // Do nothing for the time\n }\n },\n\n generateLastUpdatedFilters({commit, state}) {\n const last_updated_counts = calculateCountsByDate(state.results);\n commit('SET_LAST_UPDATE_COUNTS', last_updated_counts);\n },\n\n updateSortingOption({commit}, value) {\n commit('SET_IS_FILTERED_BY', value);\n store.dispatch('articles/searchArticles');\n commit('SET_CURRENT_PAGE', 1);\n },\n\n updateCurrentPage({commit}, value) {\n commit('SET_CURRENT_PAGE', value);\n },\n\n updateModalShowingState({commit}, value) {\n commit('SET_MODAL_SHOWING', value);\n\n // If we are hiding the modal clear the content for it as well\n if (value === false) {\n commit(\"SET_MODAL_CONTENT\", {});\n }\n },\n\n resetAllPages({commit}) {\n commit('RESET_ALL_PAGES');\n },\n\n updateModalContent({commit}, value) {\n commit('SET_MODAL_CONTENT', value);\n },\n\n setTotalResults({commit}, value) {\n commit('SET_TOTAL_RESULTS', value);\n },\n\n setFetchingNewPage({commit}, value) {\n commit('SET_FETCHING_NEW_PAGE', value);\n },\n\n setAllPagesCount({commit}, value) {\n commit('SET_ALL_PAGES', value);\n },\n\n setCollectionId({commit},value){\n commit('SET_COLLECTION_ID', value);\n }\n\n }\n};\n","import axios from '@/axios';\nimport store from \"@/store\";\n\n\nexport const filtersService = {\n getFiltersForQuery\n}\n\nfunction getFiltersForQuery(cancelToken, searchParams, searchValue, selectedItems, filteredBy) {\n let url = `/articles/filter-options`;\n let collectionItem = store.getters[\"collections/returnCollectionItem\"];\n let current_url = new URL(window.location.href);\n var last_viewed = current_url.searchParams.get(\"last_viewed\");\n\n if(collectionItem){\n url = `/articles/filter-options?last_viewed=${collectionItem.modified}`;\n }\n else if (last_viewed) {\n url = `/articles/filter-options?last_viewed=${last_viewed}`;\n }\n\n return axios.post(url, {\n searchFilters: {...searchParams},\n searchValue: searchValue,\n filters: selectedItems,\n sortBy: filteredBy\n },{withCredentials: true, cancelToken: cancelToken.token })\n .then(response => {\n return response;\n });\n}\n","import { filtersService } from \"@/store/services/filtersService\";\nimport store from \"@/store\";\nimport {\n findAllSelectedItems,\n findMatchBetweenSelectedFiltersAndCurrentFilters,\n sortItems\n} from \"@/helpers/filtersHelper\";\nimport axiosMain from \"axios\";\n\nexport const filtersModule = {\n namespaced: true,\n\n state: {\n isLoading: true,\n isOpen: true,\n status: {},\n firstFetch: true,\n currentRequest: null,\n apiCallTimeout: null,\n currentFilters: {\n status: [],\n agencies: [],\n alert_type: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n classification: [],\n filing_type: [],\n in_federal_register: [],\n last_updated: [],\n comments_due: [],\n states: [],\n countries: []\n },\n selectedFilters: {\n status: [],\n agencies: [],\n alert_type: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n classification: [],\n filing_type: [],\n in_federal_register: [],\n last_updated: [],\n comments_due: [],\n states: [],\n countries: []\n }\n },\n\n getters: {\n isLoading: state => {\n return state.isLoading;\n },\n\n getCurrentFilters: state => {\n return state.currentFilters;\n },\n\n getSelectedFilters: state => {\n return state.selectedFilters;\n },\n\n getFiltersSidebarOpenState: state => {\n return state.isOpen;\n }\n },\n\n mutations: {\n SET_FILTER_RESULTS(state, value) {\n state.currentFilters = value;\n },\n\n SET_SIDEBAR_OPEN(state, value) {\n state.isOpen = value;\n },\n\n SET_SELECT_FILTER_RESULTS(state, value) {\n state.selectedFilters = value;\n },\n\n SET_FIRST_FETCHED(state, value) {\n state.firstFetch = value;\n },\n\n SET_LOADING_STATUS(state, payload) {\n state.isLoading = payload;\n },\n\n SET_CURRENT_REQUEST(state, payload) {\n state.currentRequest = payload;\n },\n\n RESET_ALL_SELECTED_FILTERS(state) {\n state.firstFetch = true;\n state.selectedFilters = {\n status: [],\n agencies: [],\n alert_type: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n classification: [],\n filing_type: [],\n in_federal_register: [],\n last_updated: [],\n comments_due: [],\n states: [],\n countries: []\n }\n state.currentFilters = {\n status: [],\n agencies: [],\n alert_type: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n classification: [],\n filing_type: [],\n in_federal_register: [],\n last_updated: [],\n comments_due: [],\n states: [],\n countries: []\n }\n },\n\n SELECT_FILTER_ITEM(state, payload) {\n let allItems = { ...state.currentFilters };\n const itemIndex = allItems[payload.key].findIndex(x => x.label === payload.label);\n if (itemIndex !== -1) {\n allItems[payload.key][itemIndex].selected = payload.selected;\n }\n console.log('SELECT_FILTER_ITEM', itemIndex)\n console.log(allItems, \"allItems\")\n state.currentFilters = allItems;\n },\n\n SELECT_FILTER_ITEM_BACKUP(state, payload) {\n let allItems = { ...state.selectedFilters };\n const itemIndex = allItems[payload.key].findIndex(x => x.label === payload.label);\n if (itemIndex !== -1) {\n allItems[payload.key][itemIndex].selected = payload.selected;\n }\n else {\n allItems[payload.key].push({ ...payload });\n }\n state.selectedFilters = allItems;\n },\n\n // Clear the filters that have a selected status of true\n CLEAR_SELECTED_FILTERS(state) {\n let allItems = state.currentFilters;\n let allSelectedItems = state.selectedFilters;\n const allKeys = ['agencies', 'alert_type', 'classification', 'sector_type', 'tags', 'subtype_classification', 'higher_order_alert_classification',\n 'filing_type', 'in_federal_register', 'last_updated', 'comments_due', 'states', 'status', 'countries'\n ];\n allKeys.forEach(key => {\n if (allItems[key]) {\n allItems[key] = [];\n }\n if (allSelectedItems[key]) {\n allSelectedItems[key] = [];\n }\n });\n },\n\n },\n\n actions: {\n getFilters({ commit, state }, payload = false) {\n\n commit('SET_LOADING_STATUS', true);\n\n // Cancel the request if it exists\n if (state.currentRequest) {\n state.currentRequest.cancel();\n }\n\n // Create a token for cancelling requests\n const cancelTokenSource = axiosMain.CancelToken.source();\n commit('SET_CURRENT_REQUEST', cancelTokenSource);\n\n const searchParameters = store.getters[\"search/getAllFilters\"];\n const searchValue = store.getters[\"search/getSearchValue\"];\n const allFiltersOnSidebar = store.getters[\"filters/getSelectedFilters\"];\n const allSelectedItems = findAllSelectedItems(allFiltersOnSidebar);\n const filteredBy = store.getters['articles/getIsFilteredBy'];\n\n filtersService.getFiltersForQuery(cancelTokenSource, searchParameters, searchValue, allSelectedItems, filteredBy)\n .then(response => {\n\n let responseData = response.data;\n let updatedResults = findMatchBetweenSelectedFiltersAndCurrentFilters(responseData, state.selectedFilters);\n if (responseData.agencies == undefined == true) {\n commit('SET_FILTER_RESULTS', updatedResults);\n commit('SET_CURRENT_REQUEST', null);\n commit('SET_LOADING_STATUS', false);\n return false;\n }\n\n // Converts the agencies that are joined together\n // This is required as we are using a materialized view\n let allAgenciesList = [];\n const allAgencies = response.data.agencies;\n if (allAgencies) {\n\n allAgencies.forEach(item => {\n if (item.label.includes(' || ')) {\n const itemCount = parseInt(item.count.replace(/,/g, ''), 10);\n const splitItems = item.label.split(' || ');\n for (let i = 0; itemCount > i; i++) {\n splitItems.forEach(splitItem => {\n allAgenciesList.push(splitItem);\n })\n }\n } else {\n const itemCount = parseInt(item.count.replace(/,/g, ''), 10);\n for (let i = 0; itemCount > i; i++) {\n allAgenciesList.push(item.label);\n }\n }\n });\n }\n\n\n let results = {};\n allAgenciesList.forEach(i => {\n results[i] = (results[i] || 0) + 1;\n });\n\n let finalResults = [];\n for (const [key, value] of Object.entries(results)) {\n if (payload) {\n if (payload === key) {\n finalResults.push({\n \"label\": key,\n \"count\": value.toLocaleString('en-US'),\n \"selected\": true\n })\n } else {\n finalResults.push({\n \"label\": key,\n \"count\": value.toLocaleString('en-US'),\n \"selected\": false\n })\n }\n } else {\n finalResults.push({\n \"label\": key,\n \"count\": value.toLocaleString('en-US'),\n \"selected\": false\n })\n }\n }\n finalResults = sortItems(finalResults, \"count\", true);\n let sorted_finalResults = finalResults.sort((a, b) => parseInt(b.count.toString().split(',').join('')) > parseInt(a.count.toString().split(',').join('')) ? 1 : -1);\n // let responseData = response.data;\n responseData.agencies = sorted_finalResults;\n\n if (state.firstFetch) {\n commit('SET_SELECT_FILTER_RESULTS', responseData);\n commit('SET_FIRST_FETCHED', false);\n }\n\n // let updatedResults = findMatchBetweenSelectedFiltersAndCurrentFilters(responseData, state.selectedFilters);\n\n commit('SET_FILTER_RESULTS', updatedResults);\n commit('SET_CURRENT_REQUEST', null);\n commit('SET_LOADING_STATUS', false);\n })\n .catch(err => {\n\n if (!state.currentRequest) {\n store.dispatch('notifications/pushNotification', {\n message: 'There was an error fetching the filters... Attempting to fetch again.',\n type: 'danger'\n });\n commit('SET_LOADING_STATUS', false);\n }\n\n commit('SET_CURRENT_REQUEST', null);\n });\n },\n\n selectItem({ commit, state }, payload) {\n commit('SET_LOADING_STATUS', true);\n const payloadItem = { ...payload };\n commit('SELECT_FILTER_ITEM', payload);\n commit('SELECT_FILTER_ITEM_BACKUP', payloadItem);\n if (payload.key === \"last_updated\") {\n if (state.apiCallTimeout) {\n clearTimeout(state.apiCallTimeout);\n }\n state.apiCallTimeout = setTimeout(() => {\n console.log(\"Fetching articles after last_updated filter change is completed.\");\n store.dispatch('articles/searchArticles');\n }, 200);\n } else {\n store.dispatch('articles/searchArticles');\n }\n },\n\n clearFilters({ commit }) {\n commit('SET_LOADING_STATUS', true);\n commit('SET_FIRST_FETCHED', true);\n commit('CLEAR_SELECTED_FILTERS');\n store.dispatch('articles/searchArticles');\n },\n\n clearAllFilters({ commit }) {\n commit('CLEAR_SELECTED_FILTERS');\n },\n\n setLoadingStatusFiltersSidebar({ commit }, value) {\n commit('SET_LOADING_STATUS', value);\n },\n\n resetAllSelectedFiltersSidebar({ commit }) {\n commit('RESET_ALL_SELECTED_FILTERS');\n },\n\n openFiltersSidebar({ commit }, value) {\n commit('SET_SIDEBAR_OPEN', value);\n }\n\n }\n}","import {articleService, getAllStatesAgenciesAndAlertTypes} from \"@/store/services/articleService\";\nimport store from \"@/store\";\nimport {findAllSelectedItems} from \"@/helpers/filtersHelper\";\nimport {trackingHelper} from \"@/main\";\nimport axiosMain from \"axios\";\nimport {update_user_release} from \"@/store/services/accountService\";\n\n\n// Creates the filters for searching\n// This will also pull in all the data we require from our searches\nexport const searchFilters = {\n namespaced: true,\n\n state: {\n results: {},\n showingModal: false,\n releaseModal: false,\n releaseContent: null,\n loading: false,\n\n // Value of the search string\n searchValue: '',\n savedSearchName: '',\n currentRequest: null,\n\n // Options for the States, Agencies and Alert Types input fields\n allStates: [],\n allCountries: [],\n allAgencies: [],\n allAlertTypes: [],\n allSectorTypes: [],\n allTags: [],\n allSubTypeClassification: [],\n allHigher_order_alert_classification: [],\n\n // Creates the current base filters\n // This will be used for sending to the backend\n currentFilters: {\n\n status: {\n new: false,\n updated: false\n },\n\n classification: {\n sro: false,\n federal: false,\n state: false,\n territory: false,\n county: false,\n international: false,\n multinational: false\n },\n\n filingType: {\n single: false,\n joint: false\n },\n\n inFederalRegister: {\n yes: false,\n not_yet: false,\n not_expected: false\n },\n\n regAlyticsAlertId: '',\n sec_release_number: '',\n docket_file_number: '',\n order_notice: '',\n federalRegisterNumber: '',\n\n // Will use an array for Region, Agency & Alert Type\n // as a user can search with multiple different values\n state: [],\n agency: [],\n country: [],\n alertType: [],\n sector_type: [],\n tags: [],\n subtype_classification: [],\n higher_order_alert_classification: [],\n\n // Includes and excludes keywords for filtering articles\n includes: [],\n orIncludes: [],\n excludes: [],\n\n // Date searching for our filters\n // All have a starting-to date\n latestUpdate: {\n start: null,\n end: null\n },\n\n originallyPublished: {\n start: null,\n end: null\n },\n\n proposedCommentsDue: {\n start: null,\n end: null\n },\n\n ruleEffective: {\n start: null,\n end: null\n },\n\n publishedInFederalReserve: {\n start: null,\n end: null\n }\n\n }\n },\n\n // Used to get the current state of items from the Vuex store\n getters: {\n\n getSearchValue: state => {\n return state.searchValue;\n },\n\n getCurrentSearchOptions: state => {\n return state.currentFilters;\n },\n\n getSavedSearchName: state => {\n return state.savedSearchName;\n },\n\n getShowingModal: state => {\n return state.showingModal;\n },\n\n getReleaseModal: state => {\n console.log(state.releaseModal)\n return state.releaseModal;\n },\n getreleaseContent: state => {\n return state.releaseContent;\n },\n\n getStatus: state => {\n return state.currentFilters.status;\n },\n\n getClassifications: state => {\n return state.currentFilters.classification;\n },\n\n getFilingType: state => {\n return state.currentFilters.filingType;\n },\n\n getFederalRegister: state => {\n return state.currentFilters.inFederalRegister;\n },\n\n getRegAlyticsAlertId: state => {\n return state.currentFilters.regAlyticsAlertId;\n },\n getSec_release_number: state => {\n return state.currentFilters.sec_release_number;\n },\n\n getDocketFileNumber: state => {\n return state.currentFilters.docket_file_number;\n },\n\n getOrder_Notice_Id: state => {\n return state.currentFilters.order_notice;\n },\n\n getFederalRegisterNumber: state => {\n return state.currentFilters.federalRegisterNumber;\n },\n\n getLatestUpdate: state => {\n return state.currentFilters.latestUpdate;\n },\n\n getOriginallyPublished: state => {\n return state.currentFilters.originallyPublished;\n },\n\n getProposedCommentsDue: state => {\n return state.currentFilters.proposedCommentsDue;\n },\n\n getRuleEffective: state => {\n return state.currentFilters.ruleEffective;\n },\n\n // This is a date object just like the others before\n getPublishedInFederalReserve: state => {\n return state.currentFilters.publishedInFederalReserve;\n },\n\n getStateTags: state => {\n return state.currentFilters.state;\n },\n\n getCountryTags: state => {\n return state.currentFilters.country;\n },\n\n getAgencyTags: state => {\n return state.currentFilters.agency;\n },\n\n getAlertTypeTags: state => {\n return state.currentFilters.alertType;\n },\n getSectorTypeTags: state => {\n return state.currentFilters.sector_type;\n },\n\n getTags: state => {\n return state.currentFilters.tags;\n },\n getSubTypeClassification: state => {\n return state.currentFilters.subtype_classification;\n },\n getHigher_order_alert_classification: state => {\n return state.currentFilters.higher_order_alert_classification;\n },\n\n // Returns all results\n getCurrentResults: state => {\n return state.results;\n },\n\n // Returns ALL filters\n getAllFilters: state => {\n return state.currentFilters;\n },\n\n getAllStates: state => {\n return state.allStates;\n },\n\n getAllCountries: state => {\n return state.allCountries;\n },\n\n getAllAgencies: state => {\n return state.allAgencies;\n },\n\n getAllAlertTypes: state => {\n return state.allAlertTypes;\n },\n\n getAllSectorTypes: state => {\n return state.allSectorTypes;\n },\n getAllTags: state => {\n return state.allTags;\n },\n getAllSubTypeClassification: state => {\n return state.allSubTypeClassification;\n },\n getAllHigher_order_alert_classification: state => {\n return state.allHigher_order_alert_classification;\n },\n\n getAllIncludeKeywords: state => {\n return state.currentFilters.includes;\n },\n\n getAllOrIncludeKeywords: state => {\n return state.currentFilters.orIncludes;\n },\n\n getAllExcludesKeywords: state => {\n return state.currentFilters.excludes;\n }\n\n },\n\n mutations: {\n // Updates the searchValue with the new result\n SET_SEARCH_VALUE(state, payload) {\n state.searchValue = payload;\n },\n\n SET_SAVED_SEARCH_NAME(state, payload) {\n state.savedSearchName = payload;\n },\n\n // Updates if the search modal state\n SET_MODAL_SHOWING(state, payload) {\n state.showingModal = payload\n },\n SET_MODAL_RELEASE(state, payload) {\n state.releaseModal = payload\n },\n SET_releaseContent(state, payload) {\n state.releaseContent = payload\n },\n\n // Updates the status values with the new boolean values\n SET_STATUS_VALUES(state, payload) {\n state.currentFilters.status.new = payload.new;\n state.currentFilters.status.updated = payload.updated;\n },\n\n // Updates the classifications values with the new boolean values\n SET_CLASSIFICATION_VALUES(state, payload) {\n state.currentFilters.classification.sro = payload.sro;\n state.currentFilters.classification.federal = payload.federal;\n state.currentFilters.classification.state = payload.state;\n state.currentFilters.classification.territory = payload.territory;\n state.currentFilters.classification.county = payload.county;\n state.currentFilters.classification.international = payload.international;\n state.currentFilters.classification.multinational = payload.multinational;\n },\n\n // Updates the filing type values with the new boolean values\n SET_FILING_TYPE_VALUES(state, payload) {\n state.currentFilters.filingType.single = payload.single;\n state.currentFilters.filingType.joint = payload.joint;\n },\n\n // Updates the in federal register values with the new boolean values\n SET_FEDERAL_REGISTER_VALUES(state, payload) {\n state.currentFilters.inFederalRegister.yes = payload.yes;\n state.currentFilters.inFederalRegister.not_yet = payload.not_yet;\n state.currentFilters.inFederalRegister.not_expected = payload.not_expected;\n },\n\n // Sets the RegAlytics alert ID\n SET_REGALYTICS_ALERT_ID(state, payload) {\n state.currentFilters.regAlyticsAlertId = payload;\n },\n SET_Docket_File_Number(state, payload) {\n state.currentFilters.docket_file_number = payload;\n },\n\n SET_Sec_release_number(state, payload) {\n state.currentFilters.sec_release_number = payload;\n },\n SET_Order_Notice_Id(state, payload) {\n state.currentFilters.order_notice = payload;\n },\n\n // Sets the Federal Register Number ID\n SET_FEDERAL_REGISTER_NUMBER(state, payload) {\n state.currentFilters.federalRegisterNumber = payload;\n },\n\n // Sets the starting date for Latest Update\n SET_STARTING_DATE_LATEST_UPDATE(state, payload) {\n state.currentFilters.latestUpdate.start = payload;\n },\n\n // Sets the ending date for Latest Update\n SET_ENDING_DATE_LATEST_UPDATE(state, payload) {\n state.currentFilters.latestUpdate.end = payload;\n },\n\n // Sets the starting date for Originally Published\n SET_STARTING_DATE_ORIGINALLY_PUBLISHED(state, payload) {\n state.currentFilters.originallyPublished.start = payload;\n },\n\n // Sets the ending date for Originally Published\n SET_ENDING_DATE_ORIGINALLY_PUBLISHED(state, payload) {\n state.currentFilters.originallyPublished.end = payload;\n },\n\n // Sets the starting date for Proposed Comments Due\n SET_STARTING_DATE_PROPOSED_COMMENTS_DUE(state, payload) {\n state.currentFilters.proposedCommentsDue.start = payload;\n },\n\n // Sets the ending date for Proposed Comments Due\n SET_ENDING_DATE_PROPOSED_COMMENTS_DUE(state, payload) {\n state.currentFilters.proposedCommentsDue.end = payload;\n },\n\n // Sets the starting date for Rule Effective\n SET_STARTING_DATE_RULE_EFFECTIVE(state, payload) {\n state.currentFilters.ruleEffective.start = payload;\n },\n\n // Sets the ending date for Rule Effective\n SET_ENDING_DATE_RULE_EFFECTIVE(state, payload) {\n state.currentFilters.ruleEffective.end = payload;\n },\n\n // Sets the starting date for Published in Federal Reserve\n SET_STARTING_DATE_PUBLISHED_IN_FEDERAL_RESERVE(state, payload) {\n state.currentFilters.publishedInFederalReserve.start = payload;\n },\n\n // Sets the ending date for Published in Federal Reserve\n SET_ENDING_DATE_PUBLISHED_IN_FEDERAL_RESERVE(state, payload) {\n state.currentFilters.publishedInFederalReserve.end = payload;\n },\n\n // Adds items to the Regions\n ADD_ITEM_TO_STATES(state, payload) {\n state.currentFilters.state = payload;\n },\n\n ADD_ITEM_TO_COUNTRIES(state, payload) {\n state.currentFilters.country = payload;\n },\n\n // Adds items to the Agency\n ADD_ITEM_TO_AGENCIES(state, payload) {\n state.currentFilters.agency = payload;\n },\n\n // Adds items to Alert Type\n ADD_ITEM_TO_ALERT_TYPES(state, payload) {\n state.currentFilters.alertType = payload;\n },\n\n ADD_ITEM_TO_SECTOR_TYPES(state, payload) {\n state.currentFilters.sector_type = payload;\n },\n\n ADD_ITEM_TO_TAGS(state, payload) {\n state.currentFilters.tags = payload;\n },\n ADD_ITEM_TO_SUB_TYPE_CLASSIFICATION(state, payload) {\n state.currentFilters.subtype_classification = payload;\n },\n ADD_ITEM_TO_HIGHER_ORDER_ALERT_CLASSIFICATION(state, payload) {\n state.currentFilters.higher_order_alert_classification = payload;\n },\n\n // Sets the results\n SET_SEARCH_RESULTS(state, payload) {\n state.results = payload;\n },\n\n SET_LOADING_STATUS(state, payload) {\n state.loading = payload;\n },\n\n RESET_SEARCH_FILTERS(state, payload) {\n state.currentFilters = payload;\n state.searchValue = '';\n },\n\n SET_ALL_SEARCH_OPTIONS_VIA_BLOB(state, payload) {\n state.currentFilters = payload;\n },\n\n SET_ALL_STATES(state, payload) {\n state.allStates = payload;\n },\n\n SET_ALL_COUNTRIES(state, payload) {\n state.allCountries = payload;\n },\n\n SET_ALL_AGENCIES(state, payload) {\n state.allAgencies = payload;\n },\n\n SET_ALL_ALERT_TYPES(state, payload) {\n state.allAlertTypes = payload;\n },\n SET_ALL_SECTOR_TYPES(state, payload) {\n state.allSectorTypes = payload;\n },\n SET_ALL_TAGS(state, payload) {\n state.allTags = payload;\n },\n SET_ALL_SUB_TYPE_CLASSIFICATION(state, payload) {\n state.allSubTypeClassification = payload;\n },\n SET_ALL_HIGHER_ORDER_ALERT_CLASSIFICATION(state, payload) {\n state.allHigher_order_alert_classification = payload;\n },\n\n SET_INCLUDE_KEYWORDS(state, payload) {\n state.currentFilters.includes = payload;\n },\n\n SET_OR_INCLUDE_KEYWORDS(state, payload) {\n state.currentFilters.orIncludes = payload;\n },\n\n SET_EXCLUDE_KEYWORDS(state, payload) {\n state.currentFilters.excludes = payload;\n },\n\n SET_CURRENT_REQUEST(state, payload) {\n state.currentRequest = payload;\n },\n\n },\n\n actions: {\n\n // Used for updating all search options\n // Typically used for setting parameters from the URI\n updateAllSearchOptions({commit}, value) {\n commit('SET_ALL_SEARCH_OPTIONS_VIA_BLOB', value);\n },\n\n setSavedSearchName({commit}, value) {\n commit('SET_SAVED_SEARCH_NAME', value);\n },\n\n updateModalShowingState({commit}, value) {\n commit('SET_MODAL_SHOWING', value)\n },\n updateModalReleaseState({commit}, value) {\n commit('SET_MODAL_RELEASE', value)\n if (value == false) {\n update_user_release()\n }\n },\n updatereleaseContent({commit}, value) {\n commit('SET_releaseContent', value)\n\n },\n updateModalReleaseStateList({commit}, value) {\n commit('SET_MODAL_RELEASE', value)\n\n },\n\n // Updates the searchValue with the new result\n updateSearchValue({commit}, value) {\n commit('SET_SEARCH_VALUE', value);\n },\n\n // Updates the status values with the new boolean values\n updateStatusValues({commit}, value) {\n commit('SET_STATUS_VALUES', value);\n },\n\n // Updates the classifications values with the new boolean values\n updateClassificationValues({commit}, value) {\n commit('SET_CLASSIFICATION_VALUES', value);\n },\n\n // Updates the filing types values with the new boolean values\n updateFilingTypeValues({commit}, value) {\n commit('SET_FILING_TYPE_VALUES', value);\n },\n\n // Updates the filing types values with the new boolean values\n updateInFederalRegisterValue({commit}, value) {\n commit('SET_FEDERAL_REGISTER_VALUES', value);\n },\n\n // Updates the filing types values with the new boolean values\n updateRegAlyticsAlertId({commit}, value) {\n commit('SET_REGALYTICS_ALERT_ID', value);\n },\n\n updateDocket_File_Number({commit}, value) {\n commit('SET_Docket_File_Number', value);\n },\n\n updateSec_release_number({commit}, value) {\n commit('SET_Sec_release_number', value);\n },\n updateOrder_Notice_Id({commit}, value) {\n commit('SET_Order_Notice_Id', value);\n },\n\n // Updates the Federal Register Number with new string value\n updateFederalRegisterNumber({commit}, value) {\n commit('SET_FEDERAL_REGISTER_NUMBER', value);\n },\n\n // Updates the Latest Update with starting date\n updateLatestUpdateDateStart({commit}, value) {\n commit('SET_STARTING_DATE_LATEST_UPDATE', value);\n },\n\n // Updates the Latest Update with ending date\n updateLatestUpdateDateEnd({commit}, value) {\n commit('SET_ENDING_DATE_LATEST_UPDATE', value);\n },\n\n // Updates the Originally Published with starting date\n updateOriginallyPublishedDateStart({commit}, value) {\n commit('SET_STARTING_DATE_ORIGINALLY_PUBLISHED', value);\n },\n\n // Updates the Originally Published with ending date\n updateOriginallyPublishedDateEnd({commit}, value) {\n commit('SET_ENDING_DATE_ORIGINALLY_PUBLISHED', value);\n },\n\n // Updates the Proposed Comments Due with starting date\n updateProposedCommentsDueDateStart({commit}, value) {\n commit('SET_STARTING_DATE_PROPOSED_COMMENTS_DUE', value);\n },\n\n // Updates the Proposed Comments Due with ending date\n updateProposedCommentsDueDateEnd({commit}, value) {\n commit('SET_ENDING_DATE_PROPOSED_COMMENTS_DUE', value);\n },\n\n // Updates the Rule Effective with starting date\n updateRuleEffectiveDateStart({commit}, value) {\n commit('SET_STARTING_DATE_RULE_EFFECTIVE', value);\n },\n\n // Updates the Rule Effective with ending date\n updateRuleEffectiveDateEnd({commit}, value) {\n commit('SET_ENDING_DATE_RULE_EFFECTIVE', value);\n },\n\n // Updates the Rule Effective with starting date\n updatePublishedInFederalReserveDateStart({commit}, value) {\n commit('SET_STARTING_DATE_PUBLISHED_IN_FEDERAL_RESERVE', value);\n },\n\n // Updates the Rule Effective with ending date\n updatePublishedInFederalReserveDateEnd({commit}, value) {\n commit('SET_ENDING_DATE_PUBLISHED_IN_FEDERAL_RESERVE', value);\n },\n\n // Updates the States by adding a new item\n updateStates({commit}, value) {\n commit('ADD_ITEM_TO_STATES', value);\n },\n\n updateCountries({commit}, value) {\n commit('ADD_ITEM_TO_COUNTRIES', value);\n },\n\n // Updates the Agency by adding a new item\n updateAgencies({commit}, value) {\n commit('ADD_ITEM_TO_AGENCIES', value);\n },\n\n // Updates the Alert Type by adding a new item\n updateAlertTypes({commit}, value) {\n commit('ADD_ITEM_TO_ALERT_TYPES', value);\n },\n\n updateSectorTypes({commit}, value) {\n commit('ADD_ITEM_TO_SECTOR_TYPES', value);\n },\n updateTags({commit}, value) {\n commit('ADD_ITEM_TO_TAGS', value);\n },\n updateSubTypeClassification({commit}, value) {\n commit('ADD_ITEM_TO_SUB_TYPE_CLASSIFICATION', value);\n },\n updateHigherOrderAlertClassification({commit}, value) {\n commit('ADD_ITEM_TO_HIGHER_ORDER_ALERT_CLASSIFICATION', value);\n },\n\n resetSearchFilters({commit}, value) {\n commit('RESET_SEARCH_FILTERS', value);\n },\n\n // Updates the search results\n getSearchResults({commit, state}) {\n\n // Cancels the current request if exists\n if (state.currentRequest) {\n state.currentRequest.cancel();\n }\n\n // Create a token for cancelling requests\n const cancelTokenSource = axiosMain.CancelToken.source();\n commit('SET_CURRENT_REQUEST', cancelTokenSource);\n\n // Sets loading to true\n commit('SET_LOADING_STATUS', true);\n\n store.dispatch('filters/setLoadingStatusFiltersSidebar', true);\n store.dispatch('filters/resetAllSelectedFiltersSidebar');\n store.dispatch('filters/setLoadingStatusFiltersSidebar', false);\n\n store.dispatch('articles/updateCurrentPage', 1);\n store.dispatch('sidebar/manuallySetSidebarState', false);\n store.dispatch('articles/setIsFetchingArticles', true);\n const allFiltersOnSidebar = store.getters[\"filters/getCurrentFilters\"];\n const allSelectedItems = findAllSelectedItems(allFiltersOnSidebar);\n const filteredBy = store.getters['articles/getIsFilteredBy'];\n store.dispatch('filters/getFilters');\n\n return articleService.getArticlesByFilters(cancelTokenSource, 1, state.currentFilters, state.searchValue, allSelectedItems, filteredBy)\n .then(response => {\n commit('SET_CURRENT_REQUEST', null);\n commit('SET_SEARCH_RESULTS', response.data.results);\n store.dispatch('articles/setArticlesFromExternalSource', response.data.results);\n store.dispatch('articles/setTotalResults', response.data.count);\n\n // Tracks the performed search\n const currentValues = {...state.currentFilters, searchValue: state.searchValue};\n trackingHelper.trackEvent('searchedArticles', currentValues);\n\n commit('SET_LOADING_STATUS', false);\n store.dispatch('articles/setIsFetchingArticles', false);\n return response;\n })\n .catch(error => {\n commit('SET_CURRENT_REQUEST', null);\n console.log(error);\n commit('SET_LOADING_STATUS', false);\n })\n },\n\n // Gets all Agencies, Alert Types and States\n getAllOptionsForAdvancedSearch({commit}) {\n getAllStatesAgenciesAndAlertTypes()\n .then(response => {\n commit('SET_ALL_AGENCIES', response.data['all_agencies']);\n commit('SET_ALL_STATES', response.data['all_states']);\n commit('SET_ALL_ALERT_TYPES', response.data['all_alerts']);\n commit('SET_ALL_COUNTRIES', response.data['all_countries']);\n commit('SET_ALL_SECTOR_TYPES', response.data['all_sector_types']);\n commit('SET_ALL_TAGS', response.data['all_tags']);\n commit('SET_ALL_SUB_TYPE_CLASSIFICATION', response.data['all_sub_type_classification']);\n commit('SET_ALL_HIGHER_ORDER_ALERT_CLASSIFICATION', response.data['all_higher_order_alert_classification']);\n })\n },\n\n setAllStates({commit}, value) {\n commit('SET_ALL_STATES', value);\n },\n\n setAllCountries({commit}, value) {\n commit('SET_ALL_COUNTRIES', value);\n },\n\n setAllAgencies({commit}, value) {\n commit('SET_ALL_AGENCIES', value);\n },\n\n setAllAlertTypes({commit}, value) {\n commit('SET_ALL_ALERT_TYPES', value);\n },\n\n setAllSectorTypes({commit}, value) {\n commit('SET_ALL_SECTOR_TYPES', value);\n },\n setAllTags({commit}, value) {\n commit('SET_ALL_TAGS', value);\n },\n setAllSubTypeClassification({commit}, value) {\n commit('SET_ALL_SUB_TYPE_CLASSIFICATION', value);\n },\n setAllHIGHEROrderAlertClassification({commit}, value) {\n commit('SET_ALL_HIGHER_ORDER_ALERT_CLASSIFICATION', value);\n },\n\n setIncludeKeywords({commit}, value) {\n commit('SET_INCLUDE_KEYWORDS', value);\n },\n\n setOrIncludeKeywords({commit}, value) {\n commit('SET_OR_INCLUDE_KEYWORDS', value);\n },\n\n setExcludeKeywords({commit}, value) {\n commit('SET_EXCLUDE_KEYWORDS', value);\n },\n\n }\n\n}","import {Commit} from \"vuex\";\n\n\nexport const filtersSidebarModule = {\n namespaced: true,\n\n state: {\n isOpen: false\n },\n\n getters: {\n getSidebarState: (state: { isOpen: boolean }) => {\n return state.isOpen;\n }\n },\n\n mutations: {\n SWAP_SIDEBAR_STATE(state: { isOpen: boolean }) {\n state.isOpen = !state.isOpen;\n },\n\n MANUALLY_SET_SIDEBAR_STATE(state: { isOpen: boolean }, payload: boolean) {\n state.isOpen = payload;\n }\n\n },\n\n actions: {\n openOrCloseSidebar({commit}: { commit: Commit }) {\n commit('SWAP_SIDEBAR_STATE');\n },\n\n manuallySetSidebarState({commit}: { commit: Commit }, payload: boolean) {\n commit('MANUALLY_SET_SIDEBAR_STATE', payload);\n }\n\n }\n\n}\n","import axios from '@/axios';\nimport FileDownload from 'js-file-download';\n\nexport const articleCollectionsService = {\n create,\n list,\n retrieve,\n modify,\n destroy,\n getArticlesFromCollection,\n exportCollection\n}\n\nexport {\n getAllUserCollections,getAllUserCollectionsCounts,getCuratedCollections,getCompanyCollections\n}\n\n\nfunction create(name, searchFilters, pinned) {\n console.log(name, searchFilters, pinned);\n return axios.post('/collections',\n JSON.stringify({name: name, search_filters: searchFilters, pinned: pinned}),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n console.log(response);\n return response;\n }).catch(error => {\n console.log(error)\n });\n}\n\n\nfunction getAllUserCollections() {\n return axios.get('/collections/counts', { withCredentials: true })\n .then(response => {\n return response;\n });\n}\n\nfunction getCuratedCollections() {\n return axios.get('/collections/get_curated_count', { withCredentials: true })\n .then(response => {\n return response;\n });\n}\nfunction getCompanyCollections() {\n console.log(\"Here\")\n return axios.get('/collections/get_company_count', { withCredentials: true })\n .then(response => {\n return response;\n });\n}\n\nfunction getAllUserCollectionsCounts() {\n return axios.get('/collections/counts?fetchCount=True', { withCredentials: true })\n .then(response => {\n return response;\n });\n}\n\n\nfunction list() {\n return axios.get('/collections', {withCredentials: true})\n .then(response => {\n return response;\n });\n}\n\n\nfunction retrieve(pk) {\n return axios.get(`/collections/${pk}`, {withCredentials: true})\n .then(response => {\n return response;\n });\n}\n\n\nfunction modify(pk, modifications) {\n return axios.patch(`/collections/${pk}`,\n JSON.stringify(modifications),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction destroy(pk) {\n return axios.delete(`/collections/${pk}`,\n {withCredentials: true})\n .then(response => {\n return response;\n });\n}\n\n\nfunction getArticlesFromCollection(pk) {\n return axios.get(`/collections/${pk}/articles`, {withCredentials: true})\n .then(response => {\n return response;\n })\n}\n\n\nfunction exportCollection (collection_id, filename) {\n console.log(collection_id);\n return axios.post(`/collections/export`, \n JSON.stringify({'collection_id': collection_id, 'filename': filename}), \n {withCredentials: true, responseType: 'arraybuffer', headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return FileDownload(response.data, filename+'.xlsx' ? filename : 'RegAlytics.xlsx');\n }, error => {\n console.log('err', error.response)\n return error.response; \n }).catch(error => {\n console.log('err', error.response)\n return error.response;\n })\n}\n","import {getAllUserCollections, getAllUserCollectionsCounts, getCuratedCollections,getCompanyCollections} from \"@/store/services/articleCollectionsService\";\nimport axios from '@/axios';\nimport store from '@/store';\nimport {getAllUrlParamsOnLoad, getSearchValue} from \"@/helpers/urlParamsHelper\";\n\nexport const collectionsModule = {\n namespaced: true,\n\n state: {\n isOpen: false,\n showingModal: false,\n releaseModal: false,\n addingCollection: false,\n isLoading: true,\n countLoad: true,\n allCollections: [],\n allCuratedCollections: [],\n allCompanyCollections: [],\n collectionItem: null\n\n },\n\n getters: {\n\n returnAllCollections: state => {\n return state.allCollections;\n },\n\n returnAllCuratedCollections: state => {\n return state.allCuratedCollections;\n },\n returnAllCompanyCollections: state => {\n return state.allCompanyCollections;\n },\n\n getIsShowingModal: state => {\n return state.showingModal;\n },\n\n returnIfOpen: state => {\n return state.isOpen;\n },\n\n returnAddingCollection: state => {\n return state.addingCollection;\n },\n\n returnIsLoading: state => {\n return state.isLoading;\n },\n\n returnCountIsLoading: state => {\n return state.countLoad;\n },\n returnCollectionItem: state => {\n return state.collectionItem;\n },\n\n },\n\n mutations: {\n\n SWAP_COLLECTION_OPEN(state) {\n state.isOpen = !state.isOpen;\n },\n\n SWAP_SHOWING_MODAL(state, payload) {\n state.showingModal = payload;\n },\n SWAP_RELEASE_MODAL(state, payload) {\n state.releaseModal = payload;\n },\n\n SWAP_ADDING_COLLECTION(state) {\n state.addingCollection = !state.addingCollection;\n },\n\n UPDATE_ALL_COLLECTIONS(state, payload) {\n state.allCollections = payload;\n },\n\n UPDATE_ALL_CURATED_COLLECTIONS(state, payload) {\n state.allCuratedCollections = payload;\n },\n UPDATE_ALL_COMPANY_COLLECTIONS(state, payload) {\n state.allCompanyCollections = payload;\n },\n\n UPDATE_ALL_COLLECTIONS_COUNTS(state, payload) {\n state.allCollections = state.allCollections.map((v, k) => {\n let count_data = payload.filter(resp => resp.id == v.id);\n v.count = count_data[0].count.toLocaleString()\n return v\n })\n },\n\n\n UPDATE_IS_LOADING(state, payload) {\n state.isLoading = payload;\n },\n\n UPDATE_COUNT_LOAD(state, payload) {\n state.countLoad = payload;\n },\n UPDATE_COLLECTION_ITEM(state, payload) {\n state.collectionItem = payload;\n },\n\n\n },\n\n actions: {\n\n openOrCloseCollection({commit}) {\n commit('SWAP_COLLECTION_OPEN');\n },\n\n setShowingModal({commit}, value) {\n commit('SWAP_SHOWING_MODAL', value);\n },\n\n setReleaseNotesModal({commit}, value) {\n commit('SWAP_RELEASE_MODAL', value);\n },\n\n setCountLoad({commit}, value) {\n commit('UPDATE_IS_LOADING', value);\n },\n\n\n swapAddingCollection({commit}) {\n commit('SWAP_ADDING_COLLECTION');\n },\n\n setIsLoading({commit}, value) {\n commit('UPDATE_IS_LOADING', value);\n },\n\n fetchAllUserCollections({commit}) {\n commit('UPDATE_IS_LOADING', true);\n getAllUserCollections()\n .then(response => {\n commit('UPDATE_ALL_COLLECTIONS', response.data);\n commit('UPDATE_IS_LOADING', false);\n });\n },\n\n fetchAllCuratedCollections({commit}) {\n commit('UPDATE_IS_LOADING', true);\n getCuratedCollections()\n .then(response => {\n commit('UPDATE_ALL_CURATED_COLLECTIONS', response.data);\n commit('UPDATE_IS_LOADING', false);\n });\n\n },\n fetchAllCompanyCollections({commit}) {\n commit('UPDATE_IS_LOADING', true);\n getCompanyCollections()\n .then(response => {\n commit('UPDATE_ALL_COMPANY_COLLECTIONS', response.data);\n commit('UPDATE_IS_LOADING', false);\n });\n\n },\n fetchAllCounts({commit}) {\n commit('UPDATE_COUNT_LOAD', true)\n },\n setCollectionItem({commit}, value) {\n commit('UPDATE_COLLECTION_ITEM', value)\n },\n // Will check for a pinned collection/saved search and will redirect\n // the user to their saved search if it exists\n checkForPinnedArticleRedirect({commit}) {\n commit('UPDATE_IS_LOADING', true);\n axios.get('/collections/get-pinned', {withCredentials: true})\n .then(response => {\n if (response.data.success) {\n let url = new URL(window.location.href);\n url.search = response.data.pinnedUrl;\n\n // Build new URL required\n let pinnedUrl = `${url.origin}${url.pathname}${url.search}&savedSearchName=${response.data.name}`;\n history.replaceState('', '', pinnedUrl);\n\n // Find all parameters and update the state\n const searchValues = getAllUrlParamsOnLoad();\n const searchValue = getSearchValue();\n store.dispatch('search/updateAllSearchOptions', searchValues);\n store.dispatch('search/updateSearchValue', searchValue);\n store.dispatch('search/setSavedSearchName', response.data.name);\n\n // Fetch all articles based on search options\n store.dispatch('articles/searchArticles');\n } else {\n store.dispatch('application/setApplicationLoadingState', false);\n store.dispatch('articles/getArticles');\n }\n })\n .catch(err => {\n store.dispatch('application/setApplicationLoadingState', false);\n store.dispatch('articles/getArticles');\n console.log('Error fetching a pinned collection');\n console.log(err);\n });\n },\n\n // Removes a Users collection\n // Parameter required is the ID of the collection\n removeUserCollectionById({commit}, value) {\n commit('UPDATE_IS_LOADING', true);\n axios.post('/collections/remove', {itemId: value}, {withCredentials: true})\n .then(() => {\n getAllUserCollections()\n .then(response => {\n commit('UPDATE_ALL_COLLECTIONS', response.data);\n commit('UPDATE_IS_LOADING', false);\n });\n });\n },\n\n\n }\n\n};\n","import store from '@/store';\nimport {getAllUrlParamsOnLoad, getSearchValue} from \"@/helpers/urlParamsHelper\";\nimport axios from \"@/axios\";\nimport { trackingHelper } from \"@/main\";\n\nexport const editSavedSearchModule = {\n namespaced: true,\n\n state: {\n\n showingModal: false,\n isLoading: false,\n savedItemDetails: {},\n previousState: {},\n previousSearchValue: '',\n previousUrl: '',\n\n },\n\n getters: {\n\n getIsLoading: state => {\n return state.isLoading;\n },\n\n getIsShowingModal: state => {\n return state.showingModal;\n },\n\n getSavedItemDetails: state => {\n return state.savedItemDetails;\n },\n\n getSavedSearchName: state => {\n return state.savedItemDetails.name;\n }\n\n },\n\n mutations: {\n\n SET_IS_LOADING(state, payload) {\n state.isLoading = payload;\n },\n\n SWAP_SHOWING_MODAL(state, payload) {\n\n // If we are closing the modal\n // Reset the state and URL parameters to what they were before\n if (!payload) {\n window.history.replaceState(null, null, `/dashboard/${state.previousUrl}`);\n store.dispatch('search/updateAllSearchOptions', state.previousState);\n store.dispatch('search/updateSearchValue', state.previousSearchValue);\n\n state.previousSearchValue = '';\n state.previousState = {};\n state.previousUrl = '';\n }\n\n state.showingModal = payload;\n },\n\n // Sets the saved item details to be using in the modal/url parameters as well\n SET_SAVED_ITEM_DETAILS(state, payload) {\n const searchValues = getAllUrlParamsOnLoad(payload.parameters);\n const searchValue = getSearchValue();\n store.dispatch('search/updateAllSearchOptions', searchValues);\n store.dispatch('search/updateSearchValue', searchValue);\n window.history.replaceState(null, null, `/dashboard/${payload.parameters}`);\n state.savedItemDetails = payload;\n },\n\n // Sets the previous state before we open the modal\n SET_PREVIOUS_STATE(state) {\n const searchValues = getAllUrlParamsOnLoad();\n const searchValue = getSearchValue();\n const previousUrl = new URL(document.location.href);\n state.previousState = searchValues;\n state.previousSearchValue = searchValue;\n state.previousUrl = previousUrl.search;\n },\n\n // Sets the Saved Search Name\n SET_SAVED_SEARCH_NAME(state, payload) {\n state.savedItemDetails.name = payload;\n }\n\n },\n\n actions: {\n\n setIsLoading({commit}, value) {\n commit('SET_IS_LOADING', value);\n },\n\n setShowingModal({commit}, value) {\n commit('SWAP_SHOWING_MODAL', value);\n },\n\n setPreviousState({commit}) {\n commit('SET_PREVIOUS_STATE');\n },\n\n setSavedItemDetails({commit}, value) {\n commit('SET_SAVED_ITEM_DETAILS', value);\n },\n\n setSavedSearchName({commit}, value) {\n commit('SET_SAVED_SEARCH_NAME', value);\n },\n\n updateSavedSearch({commit, state}) {\n commit('SET_IS_LOADING', true);\n // Fetch the search parameters from the URL\n const url = new URL(window.location.href);\n let searchParameters;\n if (url.search.length >= 2) {\n let tempParams = new URLSearchParams(url.search);\n tempParams.delete('savedSearchName');\n searchParameters = `?${tempParams.toString()}`;\n }\n\n // Updates a saved search\n axios.put('/collections/create', {\n id: state.savedItemDetails.id,\n name: state.savedItemDetails.name,\n parameters: url.search.length >= 2 ? searchParameters : \"default\"\n }, { withCredentials: true })\n .then(() => {\n store.dispatch('notifications/pushNotification', {message: \"Updated your saved search successfully!\", type: \"green\"});\n commit('SET_IS_LOADING', false);\n\n // Tracks updating a saved search\n const allFilters = store.getters['search/getAllFilters'];\n const finalFilters = {\n ...allFilters,\n savedSearchId: state.savedItemDetails.id,\n savedSearchName: state.savedItemDetails.name\n }\n trackingHelper.trackEvent('updateSavedSearch', finalFilters);\n\n store.dispatch('collections/fetchAllUserCollections');\n store.dispatch('collections/fetchAllCounts')\n })\n .catch(() => {\n store.dispatch('notifications/pushNotification', {message: \"There was an error updating this saved search! Please try again.\", type: \"danger\"});\n commit('SET_IS_LOADING', false);\n });\n },\n\n }\n\n};\n","import {Commit} from \"vuex\";\n\n\nexport const applicationModule = {\n namespaced: true,\n\n state: {\n isLoading: false as boolean,\n isMobile: false as boolean,\n windowHeight: 0 as number,\n showingSupportModal: false as boolean,\n showingAccountModal: false as boolean\n },\n\n getters: {\n\n getIsLoading: (state: { isLoading: boolean }) => {\n return state.isLoading;\n },\n\n getSupportModal: (state: { showingSupportModal: boolean }) => {\n return state.showingSupportModal;\n },\n\n getAccountModal: (state: { showingAccountModal: boolean }) => {\n return state.showingAccountModal;\n },\n\n getIsMobile: (state: { isMobile: boolean }) => {\n return state.isMobile;\n },\n\n getWindowHeight: (state: { windowHeight: number }) => {\n return state.windowHeight;\n }\n\n },\n\n mutations: {\n SWAP_LOADING_STATE(state: { isLoading: boolean }, value: boolean) {\n state.isLoading = value;\n },\n\n SET_SUPPORT_MODAL(state: { showingSupportModal: boolean }, value: boolean) {\n state.showingSupportModal = value;\n },\n\n SET_ACCOUNT_MODAL(state: { showingAccountModal: boolean }, value: boolean) {\n state.showingAccountModal = value;\n },\n\n SET_IS_MOBILE(state: { isMobile: boolean }, value: boolean) {\n state.isMobile = value;\n },\n\n SET_WINDOW_HEIGHT(state: { windowHeight: number }, value: number) {\n state.windowHeight = value;\n }\n\n },\n\n actions: {\n setApplicationLoadingState({commit}: { commit: Commit }, payload: boolean) {\n commit('SWAP_LOADING_STATE', payload);\n },\n\n setSupportModal({commit}: { commit: Commit }, payload: boolean) {\n commit('SET_SUPPORT_MODAL', payload);\n },\n\n setAccountModal({commit}: { commit: Commit }, payload: boolean) {\n commit('SET_ACCOUNT_MODAL', payload);\n },\n\n setIsMobile({commit}: { commit: Commit }, payload: boolean) {\n commit('SET_IS_MOBILE', payload);\n },\n\n setWindowHeight({commit}: { commit: Commit }, payload: number) {\n commit('SET_WINDOW_HEIGHT', payload);\n }\n\n }\n\n};\n","import axios from \"@/axios\";\nimport store from \"@/store\";\nimport router from \"@/router\";\nimport fileDownload from \"js-file-download\";\nimport {trackingHelper} from \"@/main\";\n\nexport const foldersModule = {\n namespaced: true,\n\n state: {\n showingModal: false,\n isLoading: false,\n\n allFolders: [],\n currentFolderData: {},\n downloadingReport: false\n\n },\n\n getters: {\n\n getFolderModalOpen: state => {\n return state.showingModal;\n },\n\n getIsLoadingFolders: state => {\n return state.isLoading;\n },\n\n getAllFolders: state => {\n return state.allFolders;\n },\n\n getCurrentFolderData: state => {\n return state.currentFolderData;\n },\n\n getIsDownloadReport: state => {\n return state.downloadingReport;\n }\n\n\n },\n\n mutations: {\n\n SET_MODAL_SHOWING(state, payload) {\n state.showingModal = payload;\n },\n\n SET_IS_LOADING(state, payload) {\n state.isLoading = payload;\n },\n\n SET_ALL_FOLDERS(state, payload) {\n state.allFolders = payload;\n },\n\n ADD_TO_FOLDERS(state, payload) {\n state.allFolders = state.allFolders.concat(payload);\n },\n\n SET_CURRENT_FOLDER_DATA(state, payload) {\n state.currentFolderData = payload;\n },\n\n SET_CURRENT_FOLDER_STATUS(state, payload) {\n const indexFolder = state.allFolders.findIndex(x => x.id === payload.id);\n state.allFolders[indexFolder] = payload\n // const newList = {...state.allFolders};\n // state.allFolders = newList;\n },\n\n REMOVE_ARTICLE_FROM_FOLDER(state, payload) {\n const articleIndex = state.currentFolderData.articles.findIndex(x => x.id === payload);\n const newList = {...state.currentFolderData};\n newList.articles.splice(articleIndex, 1);\n state.currentFolderData = newList;\n },\n\n RESET_FOLDER_DATA(state, payload) {\n state.currentFolderData = {};\n },\n\n SET_IS_DOWNLOAD_REPORT(state, payload) {\n state.downloadingReport = payload;\n }\n\n },\n\n actions: {\n setShowingModal({commit}, value) {\n commit('SET_MODAL_SHOWING', value);\n },\n\n fetchAllFolders({commit}) {\n commit(\"SET_IS_LOADING\", true);\n\n axios.get('/folders/manage', {withCredentials: true})\n .then(response => {\n response.data.folders.map((v, k) => {\n v.isEdit = false;\n return v\n })\n commit('SET_ALL_FOLDERS', response.data.folders);\n })\n .then(() => {\n commit('SET_IS_LOADING', false);\n })\n .catch(() => {\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error fetching your folders. Please refresh and try again!\",\n type: \"danger\"\n });\n });\n\n },\n update_folder_flag({commit}, payload) {\n commit('SET_CURRENT_FOLDER_STATUS', payload);\n },\n addNewFolder({commit}, folderName) {\n commit('SET_IS_LOADING', true);\n\n axios.post('/folders/manage', {\n name: folderName\n }, {withCredentials: true})\n .then(response => {\n response.data.folder.isEdit = false;\n commit('ADD_TO_FOLDERS', response.data['folder']);\n commit('SET_IS_LOADING', false);\n commit('SET_MODAL_SHOWING', false);\n trackingHelper.trackEvent('createdFolder', {\n folderId: response.data.folder.id,\n folderName: response.data.folder.name\n });\n store.dispatch('notifications/pushNotification', {\n message: `Created the folder \"${folderName}\" successfully!`,\n type: \"green\"\n });\n })\n .catch(() => {\n commit('SET_IS_LOADING', false);\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error creating the folder. Please try again!\",\n type: \"danger\"\n });\n })\n\n },\n\n deleteFolder({commit}, folderId) {\n commit('SET_IS_LOADING', true);\n axios.patch('/folders/manage', {\n folder_id: folderId\n }, {withCredentials: true})\n .then(response => {\n store.dispatch('notifications/pushNotification', {\n message: \"Deleted the folder successfully!\",\n type: \"green\"\n });\n router.push({name: \"AllFolders\"});\n trackingHelper.trackEvent('deleteFolder', {\n folderId: folderId\n });\n })\n .catch(() => {\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error deleting this folder\",\n type: \"danger\"\n });\n commit('SET_IS_LOADING', false);\n });\n },\n\n fetchFolderData({commit}, folderId) {\n commit(\"SET_IS_LOADING\", true);\n\n axios.get(`/folders/manage/${folderId}`, {withCredentials: true})\n .then(response => {\n commit('SET_CURRENT_FOLDER_DATA', response.data.folder);\n commit(\"SET_IS_LOADING\", false);\n })\n .catch(() => {\n router.push({name: \"AllFolders\"});\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error fetching this folder!\",\n type: \"danger\"\n });\n });\n\n },\n\n addArticleToFolder({commit}, {folderId, regalyticsAlertId}) {\n store.dispatch('notifications/pushNotification', {\n message: \"Adding the Article to the folder...\",\n type: \"primary\"\n });\n\n axios.post(`/folders/manage/${folderId}`, {\n folder_id: folderId,\n regalytics_alert_id: regalyticsAlertId\n }, {withCredentials: true})\n .then(() => {\n store.dispatch('notifications/pushNotification', {\n message: \"Added the Article to the folder successfully!\",\n type: \"green\"\n });\n })\n .catch(() => {\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error adding this Article to the folder!\",\n type: \"danger\"\n });\n })\n },\n\n removeArticleFromFolder({commit}, {folderId, regalyticsAlertId}) {\n commit('REMOVE_ARTICLE_FROM_FOLDER', regalyticsAlertId);\n axios.patch(`/folders/manage/${folderId}`, {\n folder_id: folderId,\n regalytics_alert_id: regalyticsAlertId\n }, {withCredentials: true})\n .then(() => {\n // Do nothing\n })\n .catch(() => {\n store.dispatch('notifications/pushNotification', {\n message: \"There was an error removing this Article from the folder!\",\n type: \"danger\"\n });\n });\n },\n\n downloadArticlesFromFolder({commit}, articleId) {\n commit('SET_IS_DOWNLOAD_REPORT', true);\n store.dispatch('notifications/pushNotification', {\n message: `Downloading all articles in the folder...`,\n type: 'primary'\n })\n axios.post(`/folders/download/${articleId}`, {}, {withCredentials: true})\n .then(response => {\n const taskId = response.data.id;\n store.dispatch('folders/checkReportStatus', {\n articleId: articleId,\n taskId: taskId\n });\n })\n .catch(err => {\n if (err.response.status === 426) {\n store.dispatch('notifications/pushNotification', {\n message: `You've already downloaded the max excel files for your account today!`,\n type: 'danger'\n }, {root: true});\n } else {\n store.dispatch('notifications/pushNotification', {\n message: `An unknown error has occurred. Please try again.`,\n type: 'danger'\n }, {root: true});\n }\n commit('SET_IS_DOWNLOAD_REPORT', false);\n });\n },\n\n checkReportStatus({commit}, {articleId, taskId}) {\n axios.get(`/folders/download/${articleId}?task_id=${taskId}`, {withCredentials: true})\n .then(response => {\n const taskStatus = response.data.task_status;\n\n switch (taskStatus) {\n case \"SUCCESS\":\n store.dispatch('folders/downloadFile', {\n articleId: articleId,\n taskId: taskId\n });\n return false;\n case \"FAILURE\":\n\n store.dispatch('notifications/pushNotification', {\n message: `There was an error downloading this folder`,\n type: 'danger'\n });\n commit('SET_IS_DOWNLOAD_REPORT', false);\n return false;\n default:\n // do-nothing\n break;\n }\n\n setTimeout(function () {\n store.dispatch('folders/checkReportStatus', {\n articleId: articleId,\n taskId: response.data.task_id\n })\n }, 3000);\n });\n },\n\n downloadFile({commit}, {articleId, taskId}) {\n axios.put(`/folders/download/${articleId}?task_id=${taskId}`, {}, {\n withCredentials: true,\n responseType: \"blob\"\n })\n .then(response => {\n fileDownload(response.data, 'report.xlsx');\n this.isDownloading = false;\n store.dispatch('notifications/pushNotification', {\n message: `Successfully downloaded all articles!`,\n type: 'green'\n });\n\n trackingHelper.trackEvent('downloadedFolder', {\n folderId: articleId\n });\n commit('SET_IS_DOWNLOAD_REPORT', false);\n });\n },\n\n resetArticleFolderData({commit}) {\n commit('RESET_FOLDER_DATA');\n },\n updateFolderName({commit}, payload) {\n axios.patch(`/folders/update/${payload.id}`, {name: payload.name}, {\n withCredentials: true,\n })\n .then(response => {\n store.dispatch('notifications/pushNotification', {\n message: `Successfully Updated Folder name`,\n type: 'success'\n }, {root: true});\n });\n }\n\n }\n\n}\n","import {articleService, logSearchHistory} from \"@/store/services/articleService\";\nimport axios from \"@/axios\";\n\n\nexport const tooltipModule = {\n namespaced: true,\n\n state: {\n tooltips: []\n\n },\n\n getters: {\n\n\n\n },\n\n mutations: {\n UPDATE_TOOLTIPS(state, payload) {\n state.tooltips=payload;\n },\n\n\n },\n\n actions: {\n\n update_tooltips({commit}) {\n return axios.get(`/articles/fetch-tooltips`, { withCredentials: true })\n .then(response => {\n let resp = response.data.results\n localStorage.setItem('toolTips',JSON.stringify(response.data.results))\n commit('UPDATE_TOOLTIPS', resp);\n });\n\n }\n\n }\n\n};\n","import Vue from 'vue'\nimport Vuex from 'vuex'\n\n/* Imports all external modules */\nimport {dashboardModule} from \"@/store/modules/dashboardModule.ts\";\nimport {notificationsModule} from \"@/store/modules/notificationsModule.ts\";\nimport {messageModule} from \"@/store/modules/messageModule\";\nimport {accountsModule} from \"./modules/accountsModule\";\nimport {articlesModule} from \"@/store/modules/articlesModule\";\nimport {filtersModule} from \"@/store/modules/filtersModule\";\nimport {searchFilters} from \"@/store/modules/searchFilters\";\nimport {filtersSidebarModule} from \"@/store/modules/filtersSidebarModule.ts\";\nimport {collectionsModule} from \"@/store/modules/collectionsModule\";\nimport {editSavedSearchModule} from \"@/store/modules/editSavedSearchModule\";\nimport {applicationModule} from \"@/store/modules/applicationModule.ts\";\nimport {foldersModule} from \"@/store/modules/foldersModule\";\nimport {tooltipModule} from \"@/store/modules/tooltip\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n state: {},\n mutations: {},\n actions: {},\n modules: {\n dashboard: dashboardModule,\n notifications: notificationsModule,\n messages: messageModule,\n accounts: accountsModule,\n articles: articlesModule,\n filters: filtersModule,\n search: searchFilters,\n folders: foldersModule,\n sidebar: filtersSidebarModule,\n collections: collectionsModule,\n editSavedSearch: editSavedSearchModule,\n application: applicationModule,\n tooltip: tooltipModule\n }\n});\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingOverlay.vue?vue&type=style&index=0&id=51176834&prod&lang=scss&scoped=true\"","import axios from \"@/axios.ts\";\nimport store from \"@/store\";\nimport { checkUserAuthentication } from \"@/store/services/accountService\";\nimport Vue from 'vue';\nimport VueRouter from 'vue-router';\n\nVue.use(VueRouter)\n\nconst routes = [\n {\n // path: '/dashboard',\n // component: () => import('@/layouts/Dashboard'),\n // beforeEnter: (to, from, next) => {\n // // Check if the user is currently authenticated with the back-end before allowing access\n // // to any of the children routes\n // store.dispatch('application/setApplicationLoadingState', true);\n // checkUserAuthentication()\n // .then(response => {\n // // Parse the status code\n // const responseCode = parseInt(response.status);\n // if (responseCode === 200) {\n // next();\n // store.dispatch('accounts/setAccountDetails', response.data);\n // store.dispatch('application/setApplicationLoadingState', false);\n // store.dispatch('accounts/setSearchHighlight', response.data.search_highlight);\n\n // } else if (responseCode === 401) {\n // axios.post('/auth/refresh', {}, {withCredentials: true})\n // .then(response => {\n // if (response.status === 200) {\n // next();\n // store.dispatch('application/setApplicationLoadingState', false);\n // }\n // }).catch(() => {\n // console.log('trying to refresh')\n // })\n // } else if (responseCode === 426) {\n // store.dispatch('notifications/pushNotification', {\n // message: 'You need to upgrade your account!',\n // type: 'danger'\n // });\n // next({name: 'Login'});\n // store.dispatch('application/setApplicationLoadingState', false);\n // } else {\n // store.dispatch('notifications/pushNotification', {\n // message: 'You need to login to access the dashboard!',\n // type: 'danger'\n // });\n // next({name: 'Login'});\n // store.dispatch('application/setApplicationLoadingState', false);\n // }\n\n // })\n // .catch(err => {\n // store.dispatch('notifications/addNotification', {\n // message: \"You're not authenticated! Please login to continue\",\n // type: 'danger'\n // })\n // store.dispatch('application/setApplicationLoadingState', false);\n // next({name: 'Login'});\n // });\n // },\n path: '/dashboard',\n component: () => import('@/layouts/Dashboard'),\n beforeEnter: (to, from, next) => {\n // Check if the user is currently authenticated with the back-end before allowing access\n // to any of the children routes\n store.dispatch('application/setApplicationLoadingState', true);\n checkUserAuthentication()\n .then(response => {\n const responseCode = parseInt(response.status);\n if (responseCode === 200) {\n const accountDetails = response.data;\n store.dispatch('accounts/setAccountDetails', accountDetails);\n store.dispatch('application/setApplicationLoadingState', false);\n store.dispatch('accounts/setSearchHighlight', accountDetails.search_highlight);\n\n if (accountDetails.license_type === 'stripe') {\n if (accountDetails.stripe_status === 'active') {\n next();\n } else {\n // Redirect to a subscription management page if not active or no subscription\n next({ name: 'SubscriptionManagement' });\n }\n } else {\n next();\n }\n } else if (responseCode === 401) {\n axios.post('/auth/refresh', {}, { withCredentials: true })\n .then(response => {\n if (response.status === 200) {\n next();\n store.dispatch('application/setApplicationLoadingState', false);\n }\n }).catch(() => {\n console.log('trying to refresh')\n })\n } else if (responseCode === 426) {\n store.dispatch('notifications/pushNotification', {\n message: 'You need to upgrade your account!',\n type: 'danger'\n });\n next({ name: 'Login' });\n store.dispatch('application/setApplicationLoadingState', false);\n } else {\n store.dispatch('notifications/pushNotification', {\n message: 'You need to login to access the dashboard!',\n type: 'danger'\n });\n next({ name: 'Login' });\n store.dispatch('application/setApplicationLoadingState', false);\n }\n\n })\n .catch(err => {\n store.dispatch('notifications/addNotification', {\n message: \"You're not authenticated! Please login to continue\",\n type: 'danger'\n });\n store.dispatch('application/setApplicationLoadingState', false);\n next({ name: 'Login' });\n });\n },\n children: [\n {\n path: '/',\n name: 'Home',\n // TODO: Remove once charts are active\n beforeEnter: (to, from, next) => {\n next('/dashboard/articles');\n }\n // component: () => import('@/views/dashboard/Index')\n },\n\n {\n path: 'articles',\n name: 'Articles',\n component: () => import('@/views/dashboard/Articles')\n },\n {\n path: 'folders',\n name: 'AllFolders',\n component: () => import('@/views/dashboard/AllFolders')\n },\n {\n path: 'folders/:id',\n name: 'Folder',\n component: () => import('@/views/dashboard/Folder')\n },\n {\n path: 'account',\n name: 'Account',\n component: () => import('@/views/dashboard/Account')\n },\n {\n path: 'support',\n name: 'Support',\n component: () => import('@/views/dashboard/Support')\n },\n {\n path: 'support-confirmation',\n name: 'SupportConfirmation',\n component: () => import('@/views/dashboard/SupportConfirmation')\n },\n\n\n ]\n },\n {\n path: 'logout',\n name: 'Logout',\n component: () => import('@/views/dashboard/Logout')\n },\n {\n path: '/subscription-management',\n // name: 'SubscriptionManagement',\n component: () => import('@/layouts/Dashboard'),\n children: [\n {\n path: '/',\n name: 'SubscriptionManagement',\n component: () => import('@/views/SubscriptionManagement.vue')\n },\n ]\n // }\n // component: () => import('@/views/SubscriptionManagement.vue'),\n // // Reuse the Dashboard layout here\n // meta: { layout: 'dashboard' }\n },\n {\n path: '',\n component: () => import('@/layouts/FullPage'),\n children: [\n {\n path: '/',\n beforeEnter: (to, from, next) => {\n next('/dashboard');\n }\n },\n {\n path: '/login',\n name: 'Login',\n component: () => import('@/views/Login'),\n beforeEnter: (to, from, next) => {\n var user = store.getters['accounts/getCurrentUser']\n console.log(user)\n if (user.email) {\n return next('/dashboard/articles')\n }\n return next()\n }\n\n },\n\n {\n path: '/signup',\n name: 'Signup',\n component: () => import('@/views/Signup')\n },\n {\n path: '/signup/:access_code',\n name: 'Signup',\n component: () => import('@/views/SignupWithAccessCode.vue')\n },\n {\n path: '/link/telemetry/get-sort-url/:artical_id/:user_id/:camp',\n name: 'Link',\n component: () => import('@/views/Link')\n },\n {\n path: '/confirm-email',\n name: 'ConfirmEmail',\n component: () => import('@/views/SignupConfirmEmail')\n },\n {\n path: '/reset-password',\n name: 'SendPasswordResetEmail',\n component: () => import('@/views/ResetPassword')\n },\n {\n path: '/verify/account/:uid/:token',\n name: 'VerifyAccount',\n component: () => import('@/views/VerifyAccount')\n },\n {\n path: '/reset-password/account/:uid/:token',\n name: 'ConfirmPasswordReset',\n component: () => import('@/views/ConfirmPasswordReset')\n },\n {\n path: '/terms-of-service',\n name: 'TermsOfService',\n component: () => import('@/views/TermsOfService')\n },\n {\n path: '/ai-disclaimer',\n name: 'AiDisclaimer',\n component: () => import('@/views/AiDisclaimer')\n },\n {\n path: '/release-notes',\n name: 'ReleaseNotes',\n component: () => import('@/views/ReleaseNotes')\n },\n {\n path: '/privacy-policy',\n name: 'PrivacyPolicy',\n component: () => import('@/views/PrivacyPolicy')\n }\n ]\n }\n]\n\nconst router = new VueRouter({\n mode: 'history',\n base: process.env.BASE_URL,\n routes\n})\n\nexport default router;\n","function generateAgencies(agencies) {\n // Loop through all agencies\n let agency_list = [];\n let country_list = [];\n agencies.forEach(item => {\n agency_list.push({\n name: item.name,\n selected: false\n });\n\n item.states.forEach(item => {\n country_list.push({\n name: item.country.name,\n selected: false,\n })\n });\n });\n\n return [agency_list, country_list];\n}\n\nfunction generateFilterOptions(results) {\n\n // Creates the filters for Last Updated\n let lastUpdated = {\n today: false,\n lastWeek: false,\n lastMonth: false\n };\n\n let commentsDue = {\n tomorrow: false,\n nextWeek: false,\n nextMonth: false\n };\n\n let allItems = [...results];\n\n let allStatus = [];\n let allClassifications = [];\n let allFilingTypes = [];\n let allInFederalRegisters = [];\n let allAgencies = [];\n let allAlerts = [];\n let allCountries = [];\n\n // Used for debugging and viewing all articles and their values\n // console.log(allItems);\n\n // Loop through all results\n allItems.forEach(item => {\n\n // Find each agency in the item\n let generate_agencies_countries = generateAgencies(item.agencies);\n let agencies_res = generate_agencies_countries[0];\n let countries_res = generate_agencies_countries[1];\n allAgencies.push(...agencies_res);\n allCountries.push(...countries_res);\n\n // Check all alert_type(s) of all items\n allAlerts.push({\n name: item.alert_type,\n selected: false\n });\n\n // Creates an array of all Status'\n // It will be filtered later in the code\n allStatus.push({\n name: item.status,\n selected: false\n });\n\n // Creates an array of all Classifications\n // Will be filtered later in the code\n allClassifications.push({\n name: item.classification,\n selected: false\n });\n\n // Creates an array of all Filing Types\n // Will be filtered later in the code\n allFilingTypes.push({\n name: item.filing_type,\n selected: false\n });\n\n // Creates an array of all In Federal Registers\n // Will be filtered later in the code\n allInFederalRegisters.push({\n name: item.in_federal_register,\n selected: false\n });\n\n });\n\n\n // Remove all duplicates from the list of filters\n // Calculates the total count of all items as well\n // Sorts items based on name after calculating items\n allAgencies = sortItems(calculateMatchingItems(allAgencies), \"name\");\n allCountries = sortItems(calculateMatchingItems(allCountries), \"name\");\n allAlerts = sortItems(calculateMatchingItems(allAlerts), \"name\");\n allStatus = sortItems(calculateMatchingItems(allStatus), \"name\");\n allClassifications = sortItems(calculateMatchingItems(allClassifications), \"name\");\n allFilingTypes = sortItems(calculateMatchingItems(allFilingTypes), \"name\");\n allInFederalRegisters = sortItems(calculateMatchingItems(allInFederalRegisters), \"name\");\n\n // Builds the final object to return for filtering\n const finalFilter = {\n lastUpdated: lastUpdated,\n commentsDue: commentsDue,\n status: allStatus,\n classification: allClassifications,\n filingType: allFilingTypes,\n inFederalRegister: allInFederalRegisters,\n allAgencies: allAgencies,\n allAlerts: allAlerts,\n allCountries: allCountries\n };\n\n // console.log(finalFilter);\n return finalFilter;\n}\n\n// Removes all duplicates and creates a count total for matching results\nfunction calculateMatchingItems(itemsArray) {\n return Object.values(itemsArray.reduce((r, e) => {\n let k = `${e.name}`;\n if (!r[k]) r[k] = {...e, count: 1}\n else r[k].count += 1;\n return r;\n }, {}))\n}\n\n// Sorts an item by a particular value\nfunction sortItems(itemsArray, key, reverse = false) {\n if (reverse) {\n return itemsArray.sort((a, b) => {\n if (a[key] < b[key]) return 1;\n if (a[key] > b[key]) return -1;\n return 0;\n });\n } else {\n return itemsArray.sort((a, b) => {\n if (a[key] < b[key]) return -1;\n if (a[key] > b[key]) return 1;\n return 0;\n });\n }\n\n}\n\n\n// Finds the selected items for the current filters by a key\nfunction returnSelectedItems(allFilters, key) {\n let final_list = [];\n const selectedItems = allFilters[key].filter(item => {\n if (item.selected) {\n return true;\n }\n });\n\n // Remove unnecessary items in the object\n // We only require/want the label for filtering on the backend\n selectedItems.forEach(item => {\n final_list.push(item.label);\n });\n\n return final_list;\n}\n\n\n// Creates a list of all items currently selected\n// Required for the backend\nfunction findAllSelectedItems(filters) {\n\n let allFilters = {...filters};\n\n let last_updated = [];\n let comments_due = [];\n let status = [];\n let classification = [];\n let filing_type = [];\n let in_federal_register = [];\n let alert_type = [];\n let states = [];\n let countries = [];\n let sector_type = [];\n let tags = [];\n let subtype_classification = [];\n let higher_order_alert_classification = [];\n let agencies = [];\n\n // If we currently do NOT have any filters loaded\n // Return an object with empty lists to prevent key errors on the backend\n if (filters.length <= 0) {\n return {\n last_updated,\n comments_due,\n status,\n classification,\n filing_type,\n in_federal_register,\n alert_type,\n states,\n countries,\n sector_type,\n tags,\n subtype_classification,\n higher_order_alert_classification,\n agencies\n }\n }\n\n // Check if the current key exists\n\n if (allFilters['last_updated']) {\n last_updated = returnSelectedItems(allFilters, 'last_updated');\n }\n\n if (allFilters['comments_due']) {\n comments_due = returnSelectedItems(allFilters, 'comments_due');\n }\n\n if (allFilters['status']) {\n status = returnSelectedItems(allFilters, 'status');\n }\n\n if (allFilters['classification']) {\n classification = returnSelectedItems(allFilters, 'classification');\n }\n\n if (allFilters['filing_type']) {\n filing_type = returnSelectedItems(allFilters, 'filing_type');\n }\n\n if (allFilters['in_federal_register']) {\n in_federal_register = returnSelectedItems(allFilters, 'in_federal_register');\n }\n\n if (allFilters['alert_type']) {\n alert_type = returnSelectedItems(allFilters, 'alert_type');\n }\n\n if (allFilters['states']) {\n states = returnSelectedItems(allFilters, 'states');\n }\n\n if (allFilters['countries']) {\n countries = returnSelectedItems(allFilters, 'countries');\n }\n if (allFilters['sector_type']) {\n sector_type = returnSelectedItems(allFilters, 'sector_type');\n }\n if (allFilters['tags']) {\n tags = returnSelectedItems(allFilters, 'tags');\n }\n if (allFilters['subtype_classification']) {\n subtype_classification = returnSelectedItems(allFilters, 'subtype_classification');\n }\n if (allFilters['higher_order_alert_classification']) {\n higher_order_alert_classification = returnSelectedItems(allFilters, 'higher_order_alert_classification');\n }\n\n if (allFilters['agencies']) {\n agencies = returnSelectedItems(allFilters, 'agencies');\n }\n\n\n return {\n last_updated,\n comments_due,\n status,\n classification,\n filing_type,\n in_federal_register,\n alert_type,\n states,\n countries,\n sector_type,\n tags,\n subtype_classification,\n higher_order_alert_classification,\n agencies\n }\n}\n\n\n// Filters items by selection\n// Returns as an Array containing the name\nfunction getSelectedItems(filterItem) {\n const selectedItems = filterItem.filter(x => x.selected);\n\n // Creates an Array of the selected items and returns\n let tempList = [];\n selectedItems.forEach(x => {\n tempList.push(x.name);\n });\n\n return tempList;\n}\n\n// Filters articles based on text or a value\n// Returns an array containing the articles which meet the requirements\nfunction filterArticlesByValue(allArticles, filterArray, value) {\n\n let filteredItems = [...allArticles];\n\n if (filterArray.length > 0) {\n filteredItems = filteredItems.filter(article => {\n if (filterArray.includes(article[value])) {\n return true;\n }\n });\n return filteredItems;\n }\n\n return allArticles;\n}\n\nfunction filterAllArticles(articlesArray, filterObjects) {\n\n let tempArray = [...articlesArray];\n let tempFilters = {...filterObjects};\n\n // Creates all lists for the filter options\n // These are the name of the item(s) select\n const selectedStatus = getSelectedItems(tempFilters.status);\n const selectedClassification = getSelectedItems(tempFilters.classification);\n const selectedFilingType = getSelectedItems(tempFilters.filingType);\n const selectedInFederalRegister = getSelectedItems(tempFilters.inFederalRegister);\n const selectedAgencies = getSelectedItems(tempFilters.allAgencies);\n const selectedAlertTypes = getSelectedItems(tempFilters.allAlerts);\n const selectedCountries = getSelectedItems(tempFilters.allCountries);\n\n // Creates a new filter list to sort through\n let filteredItems = [...articlesArray];\n\n // Filter articles by date\n filteredItems = filterByDate(filteredItems, tempFilters);\n\n // Filters articles based on all possible article values\n filteredItems = filterArticlesByValue(filteredItems, selectedStatus, \"status\");\n filteredItems = filterArticlesByValue(filteredItems, selectedClassification, \"classification\");\n filteredItems = filterArticlesByValue(filteredItems, selectedClassification, \"classification\");\n filteredItems = filterArticlesByValue(filteredItems, selectedFilingType, \"filing_type\");\n filteredItems = filterArticlesByValue(filteredItems, selectedInFederalRegister, \"in_federal_register\");\n filteredItems = filterArticlesByValue(filteredItems, selectedAlertTypes, \"alert_type\");\n filteredItems = filterArticlesByValue(filteredItems, selectedCountries, \"countries\");\n\n // Filters articles based on agencies\n if (selectedAgencies.length > 0) {\n filteredItems = filteredItems.filter(article => {\n for (let agency of article.agencies) {\n if (selectedAgencies.includes(agency.name)) {\n return true;\n }\n }\n });\n }\n\n // console.log(filteredItems);\n return filteredItems;\n}\n\n// Calculate the total items for \"Last Updated\"\nfunction calculateCountsByDate(allArticles) {\n let filteredArticlesByDate = [...allArticles];\n\n let today_count = 0;\n let week_count;\n let month_count;\n\n // Creates the seventh day from today\n // Seven days back\n let seventhDay = new Date();\n seventhDay.setDate(seventhDay.getDate() - 7);\n\n // Creates the 30th day from today\n // Thirty days back\n let thirtyDays = new Date();\n thirtyDays.setDate(thirtyDays.getDate() - 30);\n\n for (let item of filteredArticlesByDate) {\n const articlesDate = new Date(item.latest_update);\n const currentDate = new Date();\n\n // If the item matches Today\n if (articlesDate.getUTCDay() === currentDate.getUTCDay() && articlesDate.getUTCMonth() === currentDate.getUTCMonth() && articlesDate.getUTCFullYear() === currentDate.getUTCFullYear()) {\n today_count++;\n }\n }\n\n // Filter the items based on the last week\n week_count = filteredArticlesByDate.filter((d) => {\n return new Date(d.latest_update).getTime() >= seventhDay.getTime();\n }).length\n\n // Filter the items based on the last month\n month_count = filteredArticlesByDate.filter((d) => {\n return new Date(d.latest_update).getTime() >= thirtyDays.getTime();\n }).length\n\n return {\n today_count,\n week_count,\n month_count\n }\n}\n\n// Filters articles by dates\nfunction filterByDate(allArticles, filterObjects) {\n let tempFilters = {...filterObjects};\n\n let allTimes = [];\n let filteredArticlesByDate = [...allArticles];\n\n // Creates the seventh day from today\n // Seven days back\n let seventhDay = new Date();\n seventhDay.setDate(seventhDay.getDate() - 7);\n\n // Creates the 30th day from today\n // Thirty days back\n let thirtyDays = new Date();\n thirtyDays.setDate(thirtyDays.getDate() - 30);\n\n let filteredData;\n\n // Check if the item timestamp matches today\n if (tempFilters.lastUpdated.today) {\n filteredData = [];\n for (let item of filteredArticlesByDate) {\n const articlesDate = new Date(item.latest_update);\n const currentDate = new Date();\n\n // If the item matches Today\n if (articlesDate.getUTCDay() === currentDate.getUTCDay() && articlesDate.getUTCMonth() === currentDate.getUTCMonth() && articlesDate.getUTCFullYear() === currentDate.getUTCFullYear()) {\n filteredData.push(item);\n }\n\n }\n } else {\n filteredData = [...allArticles];\n }\n\n\n // Filter the items based on the last week\n if (tempFilters.lastUpdated.lastWeek) {\n filteredData = filteredData.filter((d) => {\n return new Date(d.latest_update).getTime() >= seventhDay.getTime();\n })\n }\n\n // Filter the items based on the last month\n if (tempFilters.lastUpdated.lastMonth) {\n filteredData = filteredData.filter((d) => {\n return new Date(d.latest_update).getTime() >= thirtyDays.getTime();\n })\n }\n\n // Return all the results\n return filteredData;\n}\n\n\n// Calculates the matching selected items for use on the filters sidebar\n// This will update the results from the back-end if they were in fact selected before\nfunction findMatchBetweenSelectedFiltersAndCurrentFilters(currentFilters, selectedFilters) {\n let selectedAgencies = [];\n let selectedCountries = [];\n\n\n let selectedAlertTypes = [];\n let selectedClassification = [];\n let selectedFilingType = [];\n let selectedInFederalRegister = [];\n let selectedLastUpdated = [];\n let selectedCommentsDue = [];\n let selectedStatus = [];\n\n let selectedSectorTypes = [];\n let selectedTags = [];\n let selectedSubtype_classification = [];\n let selectedHigher_order_alert_classification = [];\n\n\n // Agencies\n if (\"agencies\" in selectedFilters) {\n let selectedAgencyObj = selectedFilters['agencies'].filter(x => x.selected);\n selectedAgencyObj.forEach(item => {\n selectedAgencies.push(item.label);\n });\n\n }\n // countries\n if (\"countries\" in selectedFilters) {\n let selectedCountryObj = selectedFilters['countries'].filter(x => x.selected);\n selectedCountryObj.forEach(item => {\n selectedCountries.push(item.label);\n })\n\n }\n // alert_type\n if (\"alert_type\" in selectedFilters) {\n let selectedAlertTypeObj = selectedFilters['alert_type'].filter(x => x.selected);\n selectedAlertTypeObj.forEach(item => {\n selectedAlertTypes.push(item.label);\n });\n\n }\n // classification\n if (\"classification\" in selectedFilters) {\n let selectedClassificationObj = selectedFilters['classification'].filter(x => x.selected);\n selectedClassificationObj.forEach(item => {\n selectedClassification.push(item.label);\n });\n }\n // filing_type\n if (\"filing_type\" in selectedFilters) {\n let selectedFilingTypeObj = selectedFilters['filing_type'].filter(x => x.selected);\n selectedFilingTypeObj.forEach(item => {\n selectedFilingType.push(item.label);\n });\n }\n // in_federal_register\n if (\"in_federal_register\" in selectedFilters) {\n let selectedInFederalRegisterObj = selectedFilters['in_federal_register'].filter(x => x.selected);\n selectedInFederalRegisterObj.forEach(item => {\n selectedInFederalRegister.push(item.label);\n });\n }\n // last_updated\n if (\"last_updated\" in selectedFilters) {\n let selectedLastUpdatedObj = selectedFilters['last_updated'].filter(x => x.selected);\n selectedLastUpdatedObj.forEach(item => {\n selectedLastUpdated.push(item.label);\n });\n }\n\n // comments_due\n if (\"comments_due\" in selectedFilters) {\n let selectedLastCommentsDueObj = selectedFilters['comments_due'].filter(x => x.selected);\n selectedLastCommentsDueObj.forEach(item => {\n selectedCommentsDue.push(item.label);\n });\n }\n // status\n if (\"status\" in selectedFilters) {\n let selectedStatusObj = selectedFilters['status'].filter(x => x.selected);\n selectedStatusObj.forEach(item => {\n selectedStatus.push(item.label);\n });\n }\n // sector_type\n if (\"sector_type\" in selectedFilters) {\n let selectedSectorTypeObj = selectedFilters['sector_type'].filter(x => x.selected);\n\n selectedSectorTypeObj.forEach(item => {\n selectedSectorTypes.push(item.label);\n })\n }\n\n //Tags\n if (\"tags\" in selectedFilters) {\n let selectedTagsObj = selectedFilters['tags'].filter(x => x.selected);\n selectedTagsObj.forEach(item => {\n selectedTags.push(item.label);\n })\n\n }\n //subtype_classification\n if (\"subtype_classification\" in selectedFilters) {\n let selectedSubtype_classificationObj = selectedFilters['subtype_classification'].filter(x => x.selected);\n selectedSubtype_classificationObj.forEach(item => {\n selectedSubtype_classification.push(item.label);\n })\n\n }\n //higher_order_alert_classification\n if (\"higher_order_alert_classification\" in selectedFilters) {\n let selectedHigher_order_alert_classificationObj = selectedFilters['higher_order_alert_classification'].filter(x => x.selected);\n selectedHigher_order_alert_classificationObj.forEach(item => {\n selectedHigher_order_alert_classification.push(item.label);\n })\n\n }\n\n\n let newSelectedFilters = {...currentFilters};\n\n if (\"agencies\" in selectedFilters) {\n if (selectedAgencies.length > 0) {\n if (newSelectedFilters.agencies) {\n newSelectedFilters['agencies'].forEach(item => {\n if (selectedAgencies.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n if (\"countries\" in selectedFilters) {\n if (selectedCountries.length > 0) {\n if (newSelectedFilters.countries) {\n newSelectedFilters['countries'].forEach(item => {\n if (selectedCountries.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n if (\"sector_type\" in selectedFilters) {\n if (selectedSectorTypes.length > 0) {\n if (newSelectedFilters.sector_type) {\n newSelectedFilters['sector_type'].forEach(item => {\n if (selectedSectorTypes.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n\n\n if (\"tags\" in selectedFilters) {\n if (selectedTags.length > 0) {\n if (newSelectedFilters.tags) {\n newSelectedFilters['tags'].forEach(item => {\n if (selectedTags.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n }\n\n if (\"subtype_classification\" in selectedFilters) {\n if (selectedSubtype_classification.length > 0) {\n if (newSelectedFilters.subtype_classification) {\n newSelectedFilters['subtype_classification'].forEach(item => {\n if (selectedSubtype_classification.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n\n if (\"higher_order_alert_classification\" in selectedFilters) {\n if (selectedHigher_order_alert_classification.length > 0) {\n if (newSelectedFilters.higher_order_alert_classification) {\n newSelectedFilters['higher_order_alert_classification'].forEach(item => {\n if (selectedHigher_order_alert_classification.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n if (\"alert_type\" in selectedFilters) {\n if (selectedAlertTypes.length > 0) {\n if (newSelectedFilters.alert_type) {\n newSelectedFilters['alert_type'].forEach(item => {\n if (selectedAlertTypes.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n\n if (\"classification\" in selectedFilters) {\n if (selectedClassification.length > 0) {\n if (newSelectedFilters.classification) {\n newSelectedFilters['classification'].forEach(item => {\n if (selectedClassification.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n if (\"filing_type\" in selectedFilters) {\n if (selectedFilingType.length > 0) {\n if (newSelectedFilters.filing_type) {\n newSelectedFilters['filing_type'].forEach(item => {\n if (selectedFilingType.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n\n }\n\n if (\"in_federal_register\" in selectedFilters) {\n if (selectedInFederalRegister.length > 0) {\n if (newSelectedFilters.in_federal_register) {\n newSelectedFilters['in_federal_register'].forEach(item => {\n if (selectedInFederalRegister.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n }\n\n // if (\"last_updated\" in selectedFilters) {\n // if (selectedLastUpdated.length > 0) {\n // if (newSelectedFilters.last_updated) {\n // newSelectedFilters['last_updated'].forEach(item => {\n // if (selectedLastUpdated.includes(item.label)) {\n // item.selected = true;\n // }\n // });\n // }\n // }\n // }\n\n if (\"comments_due\" in selectedFilters) {\n if (selectedCommentsDue.length > 0) {\n if (newSelectedFilters.comments_due) {\n newSelectedFilters['comments_due'].forEach(item => {\n if (selectedCommentsDue.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n }\n\n if (\"status\" in selectedFilters) {\n if (selectedStatus.length > 0) {\n if (newSelectedFilters.status) {\n newSelectedFilters['status'].forEach(item => {\n if (selectedStatus.includes(item.label)) {\n item.selected = true;\n }\n });\n }\n }\n }\n\n\n return newSelectedFilters;\n}\n\n\nexport {\n findAllSelectedItems,\n generateFilterOptions,\n filterAllArticles,\n calculateCountsByDate,\n sortItems,\n findMatchBetweenSelectedFiltersAndCurrentFilters\n};","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[_c('transition',{attrs:{\"name\":\"theme-fade\"}},[(_vm.isThemeLoading)?_c('div',{staticClass:\"theme-loading-overlay\"},[_c('div',{staticClass:\"loader-container\"},[_c('svg',{staticClass:\"color-wheel\",attrs:{\"viewBox\":\"0 0 50 50\"}},[_c('circle',{staticClass:\"loader-circle\",attrs:{\"cx\":\"25\",\"cy\":\"25\",\"r\":\"20\",\"fill\":\"none\",\"stroke-width\":\"4\"}}),_c('circle',{staticClass:\"loader-progress\",attrs:{\"cx\":\"25\",\"cy\":\"25\",\"r\":\"20\",\"fill\":\"none\",\"stroke-width\":\"4\"}})]),_c('div',{staticClass:\"loader-text\"},[_vm._v(\"Loading...\")])])]):_vm._e()]),(!_vm.isThemeLoading)?_c('div',[_c('div',{staticClass:\"custom-loading-overlay\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.getIsLoading)?_c('loading-overlay'):_vm._e()],1)],1),_c('router-view')],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n
\n \n
\n
\n
Loading...
\n
\n
\n \n\n \n
\n
\n \n \n \n
\n\n \n
\n
\n
\n\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=4d8a7069\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=4d8a7069&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import axios from \"@/axios\";\n\nexport class TrackingHelper {\n\n /*\n *\n * DO NOT CALL FUNCTIONS WITH _functionName()\n * THESE ARE PRIVATE FUNCTIONS\n *\n * */\n\n constructor(app) {\n this.app = app;\n this.store = app.$store;\n this._watchRouteChange();\n this.previousPage = '';\n this.websiteUrl = window.location.origin;\n }\n\n _watchRouteChange() {\n this._captureFirstRoute();\n\n // Captures the router updating\n this.app._router.beforeEach((to, from, next) => {\n\n // TODO: Send the route change to an external service for logging\n const nextRoute = to.path;\n const routeName = to.name;\n\n if (this.store.getters['accounts/getCurrentUser']) {\n if (this.store.getters['accounts/getCurrentUser'].telemetry) {\n // eslint-disable-next-line no-undef\n analytics.page(routeName, {\n path: nextRoute,\n url: `${this.websiteUrl}${nextRoute}`,\n search: '',\n referrer: this.previousPage\n });\n }\n }\n\n this.previousPage = `${this.websiteUrl}${nextRoute}`;\n next();\n });\n }\n\n _captureFirstRoute() {\n // Captures the first route after the page has loaded\n // Event will not fire from Router so needs to be manually captured\n setTimeout(() => {\n const startRoute = this.app._router.history.current.path;\n this.previousPage = `${this.websiteUrl}${startRoute}`;\n }, 3000);\n }\n\n trackUser(userData) {\n // Check if the user has telemetry disabled\n if (!userData.telemetry) return;\n\n // eslint-disable-next-line no-undef\n analytics.identify(userData.id, {\n name: userData.name,\n email: userData.email,\n company: userData.company,\n department: userData.department,\n function: userData.function,\n role: userData.role,\n license: userData.license,\n });\n }\n\n resetUser() {\n // eslint-disable-next-line no-undef\n analytics.reset();\n }\n\n // TODO: Send the event information to the backend or a service\n trackEvent(eventName, data) {\n // Check if the user has telemetry disabled\n if (!this.store.getters['accounts/getCurrentUser']) return;\n if (!this.store.getters['accounts/getCurrentUser'].telemetry) return;\n\n // eslint-disable-next-line no-undef\n analytics.track(eventName, data);\n }\n\n}\n","import Vue from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\nimport '@/assets/scss/main.scss';\nimport 'bootstrap/dist/js/bootstrap.bundle.min.js';\nimport 'chart.js/dist/Chart.bundle.min.js';\nimport * as Sentry from '@sentry/vue';\nimport { Integrations } from '@sentry/tracing';\n// Axios\nimport axios from \"@/axios\";\n// Vue Select\nimport vSelect from 'vue-select';\nimport 'vue-select/dist/vue-select.css';\n// Custom tracking plugin => Globally accessible from this.$tracking\nimport { TrackingHelper } from \"@/helpers/trackingHelper\"\n\nVue.config.productionTip = false;\n\nVue.prototype.$http = axios;\n// End of Axios\nVue.component('v-select', vSelect);\n// End of Vue Select\n\n//Switch sentry on the basis of project environment\nif (process.env.VUE_APP_API_ENVIRONMENT == \"STAGING\") {\n\n //Sentry Init\n Sentry.init({\n Vue,\n dsn: \"https://5c24c2d9d6054ac6b4df33e4e7c96170@o851435.ingest.sentry.io/5893355\",\n tracingOptions: {\n // To track child component actions\n trackComponents: true,\n },\n integrations: [new Integrations.BrowserTracing()],\n // Can toggle if required in production\n tracesSampleRate: 1.0,\n });\n} else if (process.env.VUE_APP_API_ENVIRONMENT == \"PRODUCTION\") {\n //Sentry Init\n Sentry.init({\n Vue,\n dsn: \"https://edcd050a014c4880a9b3405b4eec0bbc@o851435.ingest.sentry.io/5893358\",\n tracingOptions: {\n // To track child component actions\n trackComponents: true,\n },\n integrations: [new Integrations.BrowserTracing()],\n // Can toggle if required in production\n tracesSampleRate: 1.0,\n });\n}\n\nconst EventBus = new Vue();\nconst app = new Vue({\n router,\n store,\n render: h => h(App)\n}).$mount('#app');\n\nexport const trackingHelper = new TrackingHelper(app);\nVue.prototype.$tracking = trackingHelper;\n// End of custom tracking plugin\n","import axios from '@/axios';\n\nexport const accountService = {\n createUser,\n login,\n logout,\n sendVerificationEmail,\n verifyEmail,\n sendResetPasswordEmail,\n resetPassword,\n sendSupportMessage,\n changeLicense,\n getCurrentUser\n}\n\nexport {\n checkUserAuthentication, sendSupportMessage,\n update_user_release\n};\n\n// Checks if the current User is authenticated\nfunction checkUserAuthentication() {\n return axios.post('/accounts/user/validate-authentication', {}, {withCredentials: true})\n .then(response => {\n return response;\n })\n}\n\nfunction update_user_release() {\n return axios.post('/accounts/user/update-release', {}, {withCredentials: true})\n .then(response => {\n return response;\n })\n}\n\nfunction createUser(firstName, lastName, email, phone, password1, password2, role, department, func, accessCode) {\n return axios.post('/accounts/user',\n JSON.stringify({first_name: firstName,\n last_name: lastName,\n email: email,\n phone_number: phone,\n password1: password1,\n password2: password2,\n role: role,\n department: department,\n function: func,\n access_code: accessCode}),\n {headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction login(email, password) {\n return axios.post('/auth/token',\n JSON.stringify({email: email, password: password}),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction logout() {\n return axios.post('/auth/logout',\n {},\n {withCredentials: true, skipAuthRefresh: true})\n .then(response => {\n localStorage.removeItem('sidebar_logo_url');\n localStorage.removeItem('sidebar_name');\n localStorage.removeItem('primary_color');\n return response;\n });\n}\n\n\nfunction sendVerificationEmail(email) {\n return axios.post('/accounts/user/send/verify-email',\n JSON.stringify({email: email}),\n {headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction verifyEmail(uid, token) {\n return axios.patch('/accounts/user/verify-email',\n JSON.stringify({uid: uid, token: token}),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction sendResetPasswordEmail(email) {\n return axios.post('/accounts/user/send/reset-password',\n JSON.stringify({email: email}),\n {headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction resetPassword(uid, token, password1, password2) {\n return axios.patch('/accounts/user/reset-password',\n JSON.stringify({uid: uid, token: token, password1: password1, password2: password2}),\n {headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n });\n}\n\n\nfunction changeLicense(accessCode) {\n return axios.patch('/accounts/user/upgrade',\n JSON.stringify({access_code: accessCode}),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n })\n}\n\n\nfunction sendSupportMessage(email, subject, body) {\n return axios.post('/accounts/support',\n JSON.stringify({email: email, subject: subject, body: body}),\n {withCredentials: true, headers: {'Content-Type': 'application/json'}})\n .then(response => {\n return response;\n })\n}\n\n\nfunction getCurrentUser() {\n return axios.get('/accounts/user', {withCredentials: true})\n .then(response => {\n return response;\n })\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=4d8a7069&prod&lang=scss\"","module.exports = __webpack_public_path__ + \"img/logo.1a2a6966.svg\";","import { defaultSearchOptions } from \"@/store/services/articleService\";\n\nexport {\n resetUrlParams,\n addOrUpdateParameter,\n getAllUrlParamsOnLoad,\n getSearchValue,\n getSavedSearchName\n};\n\n\n// Adds a Key/Value pair to the URL parameters\nfunction addOrUpdateParameter(name, value) {\n const url = new URL(document.location.href);\n let params = new URLSearchParams(url.search);\n\n // If the parameter already exists... Delete it and add it\n if (params.has(name)) {\n params.delete(name);\n params.append(name, value);\n } else {\n params.append(name, value);\n }\n\n // If the value provided is null, 0, or a blank string delete it from the URL\n if (value.trim().length <= 0) {\n params.delete(name);\n }\n\n history.replaceState(null, null, `?${params.toString()}`);\n}\n\n// Resets the URL on the current page to the default results\nfunction resetUrlParams() {\n const url = new URL(document.location.href);\n const newUrl = `${url.origin}${url.pathname}`;\n\n history.replaceState(null, null, newUrl);\n}\n\n// Converts the string to a boolean\nfunction stringToBoolean(stringValue) {\n switch (stringValue.toLowerCase().trim()) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n // If this fails let javascript try to handle it\n return Boolean(stringValue);\n }\n}\n\n// Gets the search value from the URL parameters\nfunction getSearchValue() {\n const url = new URL(document.location.href);\n let params = new URLSearchParams(url.search);\n\n let searchValue = '';\n\n params.forEach((value, key) => {\n // Decodes the URI to get the normal values\n value = decodeURI(value);\n\n switch (key) {\n case \"searchValue\":\n searchValue = value;\n break;\n default:\n // Do nothing\n break;\n }\n });\n\n return searchValue;\n}\n\nfunction getSavedSearchName() {\n const url = new URL(document.location.href);\n let params = new URLSearchParams(url.search);\n\n let savedSearchName = '';\n\n params.forEach((value, key) => {\n // Decodes the URI to get the normal values\n value = decodeURI(value);\n\n switch (key) {\n case \"savedSearchName\":\n savedSearchName = value;\n break;\n default:\n // Do nothing\n break;\n }\n });\n\n return savedSearchName;\n}\n\n// Gets all URL params on load\nfunction getAllUrlParamsOnLoad(providedSearchParams = false) {\n let params;\n if (providedSearchParams) {\n params = new URLSearchParams(providedSearchParams);\n } else {\n const url = new URL(document.location.href);\n params = new URLSearchParams(url.search);\n }\n\n\n // Creates a new object of the params\n let tempSearchOptions = JSON.stringify(defaultSearchOptions);\n tempSearchOptions = JSON.parse(tempSearchOptions);\n\n // Temporary lists for States, Alerts, and Alert Types\n let statesList = [];\n let countriesList = [];\n let agenciesList = [];\n let alertTypes = [];\n let sector_type = [];\n let tags = [];\n let subtype_classification = [];\n let higher_order_alert_classification = [];\n let includeKeywords = [];\n let orIncludeKeywords = [];\n let excludeKeywords = [];\n let searchValue = '';\n\n // Will update the Search Options\n params.forEach((value, key) => {\n\n // Decodes the URI to get the normal values\n value = decodeURI(value);\n\n // Update the state for the tempSearchOptions\n // This will be sent to the Vuex store to update the search settings\n switch (key) {\n case \"searchValue\":\n searchValue = value;\n break;\n case \"status\":\n value = value.split('|');\n tempSearchOptions.status.new = stringToBoolean(value[0]);\n tempSearchOptions.status.updated = stringToBoolean(value[1]);\n break;\n case \"classification\":\n value = value.split('|');\n tempSearchOptions.classification.sro = stringToBoolean(value[0]);\n tempSearchOptions.classification.federal = stringToBoolean(value[1]);\n tempSearchOptions.classification.state = stringToBoolean(value[2]);\n tempSearchOptions.classification.territory = stringToBoolean(value[5]);\n tempSearchOptions.classification.county = stringToBoolean(value[4]);\n tempSearchOptions.classification.international = stringToBoolean(value[6]);\n tempSearchOptions.classification.multinational = stringToBoolean(value[3]);\n break;\n case \"filingType\":\n value = value.split('|');\n tempSearchOptions.filingType.single = stringToBoolean(value[0]);\n tempSearchOptions.filingType.joint = stringToBoolean(value[1]);\n break;\n case \"inFederalRegister\":\n value = value.split('|');\n tempSearchOptions.inFederalRegister.yes = stringToBoolean(value[0]);\n tempSearchOptions.inFederalRegister.not_yet = stringToBoolean(value[1]);\n tempSearchOptions.inFederalRegister.not_expected = stringToBoolean(value[2]);\n break;\n case \"states\":\n value = value.split('|');\n for (let item of value) {\n statesList.push({ name: item });\n }\n tempSearchOptions.state = statesList;\n break;\n case \"countries\":\n value = value.split('|');\n for (let item of value) {\n countriesList.push({ name: item });\n }\n tempSearchOptions.country = countriesList;\n break;\n case \"agencies\":\n value = value.split('|');\n for (let item of value) {\n agenciesList.push({ name: item });\n }\n tempSearchOptions.agency = agenciesList;\n break;\n case \"alertTypes\":\n value = value.split('|');\n for (let item of value) {\n alertTypes.push({ name: item });\n }\n tempSearchOptions.alertType = alertTypes;\n break;\n\n case \"sector_type\":\n value = value.split('|');\n for (let item of value) {\n sector_type.push({ name: item });\n }\n tempSearchOptions.sector_type = sector_type;\n break;\n\n case \"tags\":\n value = value.split('|');\n for (let item of value) {\n tags.push({ name: item });\n }\n tempSearchOptions.tags = tags;\n break;\n\n\n case \"subtype_classification\":\n value = value.split('|');\n console.log(value)\n for (let item of value) {\n subtype_classification.push({ name: item });\n }\n tempSearchOptions.subtype_classification = subtype_classification;\n break;\n case \"higher_order_alert_classification\":\n value = value.split('|');\n console.log(value)\n for (let item of value) {\n higher_order_alert_classification.push({ name: item });\n }\n tempSearchOptions.higher_order_alert_classification = higher_order_alert_classification;\n break;\n case \"includes\":\n value = value.split('|');\n for (let item of value) {\n includeKeywords.push(item);\n }\n tempSearchOptions.includes = includeKeywords;\n break;\n case \"orIncludes\":\n value = value.split('|');\n for (let item of value) {\n orIncludeKeywords.push(item);\n }\n tempSearchOptions.orIncludes = orIncludeKeywords;\n break;\n case \"excludes\":\n value = value.split('|');\n for (let item of value) {\n excludeKeywords.push(item);\n }\n tempSearchOptions.excludes = excludeKeywords;\n break;\n case \"sec_release_number\":\n tempSearchOptions.sec_release_number = value;\n break;\n case \"docket_file_number\":\n tempSearchOptions.docket_file_number = value;\n break;\n case \"order_notice\":\n tempSearchOptions.order_notice = value;\n break;\n case \"regAlyticsAlertID\":\n tempSearchOptions.regAlyticsAlertId = value;\n break;\n\n case \"federalRegisterNumber\":\n tempSearchOptions.federalRegisterNumber = value;\n break;\n case \"latestUpdateStart\":\n tempSearchOptions.latestUpdate.start = value;\n break;\n case \"latestUpdateEnd\":\n tempSearchOptions.latestUpdate.end = value;\n break;\n case \"originallyPublishedStart\":\n tempSearchOptions.originallyPublished.start = value;\n break;\n case \"originallyPublishedEnd\":\n tempSearchOptions.originallyPublished.end = value;\n break;\n case \"proposedCommentsDueStart\":\n tempSearchOptions.proposedCommentsDue.start = value;\n break;\n case \"proposedCommentsDueEnd\":\n tempSearchOptions.proposedCommentsDue.end = value;\n break;\n case \"ruleEffectiveStart\":\n tempSearchOptions.ruleEffective.start = value;\n break;\n case \"ruleEffectiveEnd\":\n tempSearchOptions.ruleEffective.end = value;\n break;\n case \"publishedInFederalReserveStart\":\n tempSearchOptions.publishedInFederalReserve.start = value;\n break;\n case \"publishedInFederalReserveEnd\":\n tempSearchOptions.publishedInFederalReserve.end = value;\n break;\n default:\n // Do nothing\n break;\n }\n\n });\n\n return tempSearchOptions;\n}","import axios, {AxiosInstance, AxiosRequestConfig} from \"axios\";\nimport createAuthRefreshInterceptor from \"axios-auth-refresh\";\nimport store from \"@/store\";\nimport router from \"@/router\";\n\nlet api_url;\n\nif (process.env.VUE_APP_API_ENVIRONMENT == \"PRODUCTION\" ||\n process.env.VUE_APP_API_ENVIRONMENT == \"STAGING\") {\n api_url = process.env.VUE_APP_API_SERVER_URL;\n} else {\n api_url = \"http://127.0.0.1:8000\";\n}\n\nconst config: AxiosRequestConfig = {\n baseURL: api_url\n}\n\nconst client: AxiosInstance = axios.create(config);\n\n/*\n* Handles automatically refreshing the token\n* Catches 401 and 403 errors\n* */\nconst refreshAuthLogic = (failedRequest: any) => client.post('/auth/refresh',\n {}, {withCredentials: true}).then(r => {\n const token = r.data.access;\n store.dispatch('accounts/setUsersToken', token);\n failedRequest.response.config.headers.common = {'Authorization': `Bearer ${token}`};\n client.defaults.headers.common = {'Authorization': `Bearer ${token}`};\n return Promise.resolve();\n}).catch(() => {\n router.push({name: 'Login'});\n store.dispatch('notifications/pushNotification', {\n message: 'You\\'re not authenticated! Please login to continue.',\n type: 'danger'\n });\n store.dispatch('application/setApplicationLoadingState', false);\n});\n\ncreateAuthRefreshInterceptor(client, refreshAuthLogic, {\n statusCodes: [401, 403],\n pauseInstanceWhileRefreshing: true\n});\n\nexport default client;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"loading-overlay\"},[_c('div',{staticClass:\"content-center\",attrs:{\"aria-label\":\"Loading screen\"}},[(_vm.sidebarLogoUrl)?_c('img',{staticClass:\"logo\",attrs:{\"src\":_vm.sidebarLogoUrl,\"alt\":\"Sidebar Logo\"}}):_c('img',{staticClass:\"mb-3\",attrs:{\"src\":require(\"@/assets/images/logo.svg\"),\"width\":\"180px\",\"alt\":\"RegAlytics Logo\"}}),_c('spinner')],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n
\n
![\"Sidebar]()
\n

\n
\n
\n
\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingOverlay.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingOverlay.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LoadingOverlay.vue?vue&type=template&id=51176834&scoped=true\"\nimport script from \"./LoadingOverlay.vue?vue&type=script&lang=js\"\nexport * from \"./LoadingOverlay.vue?vue&type=script&lang=js\"\nimport style0 from \"./LoadingOverlay.vue?vue&type=style&index=0&id=51176834&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"51176834\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}