diff --git a/services/web/app.mjs b/services/web/app.mjs index c9862b8094..5de7ee17e2 100644 --- a/services/web/app.mjs +++ b/services/web/app.mjs @@ -5,7 +5,7 @@ import Modules from './app/src/infrastructure/Modules.js' import metrics from '@overleaf/metrics' import Settings from '@overleaf/settings' import logger from '@overleaf/logger' -import PlansLocator from './app/src/Features/Subscription/PlansLocator.js' +import PlansLocator from './app/src/Features/Subscription/PlansLocator.mjs' import HistoryManager from './app/src/Features/History/HistoryManager.mjs' import SiteAdminHandler from './app/src/infrastructure/SiteAdminHandler.mjs' import http from 'node:http' diff --git a/services/web/app/src/Features/Analytics/AnalyticsController.mjs b/services/web/app/src/Features/Analytics/AnalyticsController.mjs index bc207493ed..2c9305dd50 100644 --- a/services/web/app/src/Features/Analytics/AnalyticsController.mjs +++ b/services/web/app/src/Features/Analytics/AnalyticsController.mjs @@ -1,10 +1,10 @@ import metrics from '@overleaf/metrics' -import AnalyticsManager from './AnalyticsManager.js' -import SessionManager from '../Authentication/SessionManager.js' +import AnalyticsManager from './AnalyticsManager.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import GeoIpLookup from '../../infrastructure/GeoIpLookup.mjs' import Features from '../../infrastructure/Features.js' import { expressify } from '@overleaf/promise-utils' -import AccountMappingHelper from './AccountMappingHelper.js' +import AccountMappingHelper from './AccountMappingHelper.mjs' async function registerSalesforceMapping(req, res, next) { if (!Features.hasFeature('analytics')) { diff --git a/services/web/app/src/Features/Analytics/AnalyticsRegistrationSourceMiddleware.mjs b/services/web/app/src/Features/Analytics/AnalyticsRegistrationSourceMiddleware.mjs index 99f931e1d9..36945911c0 100644 --- a/services/web/app/src/Features/Analytics/AnalyticsRegistrationSourceMiddleware.mjs +++ b/services/web/app/src/Features/Analytics/AnalyticsRegistrationSourceMiddleware.mjs @@ -1,7 +1,7 @@ import logger from '@overleaf/logger' import OError from '@overleaf/o-error' -import AnalyticsRegistrationSourceHelper from './AnalyticsRegistrationSourceHelper.js' -import SessionManager from '../../Features/Authentication/SessionManager.js' +import AnalyticsRegistrationSourceHelper from './AnalyticsRegistrationSourceHelper.mjs' +import SessionManager from '../../Features/Authentication/SessionManager.mjs' function setSource(medium, source) { return function (req, res, next) { diff --git a/services/web/app/src/Features/Analytics/AnalyticsUTMTrackingMiddleware.mjs b/services/web/app/src/Features/Analytics/AnalyticsUTMTrackingMiddleware.mjs index 8088c57d6b..bfdc32771c 100644 --- a/services/web/app/src/Features/Analytics/AnalyticsUTMTrackingMiddleware.mjs +++ b/services/web/app/src/Features/Analytics/AnalyticsUTMTrackingMiddleware.mjs @@ -1,6 +1,6 @@ import _ from 'lodash' -import RequestHelper from './RequestHelper.js' -import AnalyticsManager from './AnalyticsManager.js' +import RequestHelper from './RequestHelper.mjs' +import AnalyticsManager from './AnalyticsManager.mjs' import querystring from 'node:querystring' import { URL } from 'node:url' import Settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/Authentication/AuthenticationController.mjs b/services/web/app/src/Features/Authentication/AuthenticationController.mjs index 586262d311..7a691ddaca 100644 --- a/services/web/app/src/Features/Authentication/AuthenticationController.mjs +++ b/services/web/app/src/Features/Authentication/AuthenticationController.mjs @@ -1,8 +1,8 @@ -import AuthenticationManager from './AuthenticationManager.js' -import SessionManager from './SessionManager.js' +import AuthenticationManager from './AuthenticationManager.mjs' +import SessionManager from './SessionManager.mjs' import OError from '@overleaf/o-error' import LoginRateLimiter from '../Security/LoginRateLimiter.js' -import UserUpdater from '../User/UserUpdater.js' +import UserUpdater from '../User/UserUpdater.mjs' import Metrics from '@overleaf/metrics' import logger from '@overleaf/logger' import querystring from 'node:querystring' @@ -10,15 +10,15 @@ import Settings from '@overleaf/settings' import basicAuth from 'basic-auth' import tsscmp from 'tsscmp' import UserHandler from '../User/UserHandler.mjs' -import UserSessionsManager from '../User/UserSessionsManager.js' -import Analytics from '../Analytics/AnalyticsManager.js' +import UserSessionsManager from '../User/UserSessionsManager.mjs' +import Analytics from '../Analytics/AnalyticsManager.mjs' import passport from 'passport' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' -import UrlHelper from '../Helpers/UrlHelper.js' -import AsyncFormHelper from '../Helpers/AsyncFormHelper.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' +import UrlHelper from '../Helpers/UrlHelper.mjs' +import AsyncFormHelper from '../Helpers/AsyncFormHelper.mjs' import _ from 'lodash' -import UserAuditLogHandler from '../User/UserAuditLogHandler.js' -import AnalyticsRegistrationSourceHelper from '../Analytics/AnalyticsRegistrationSourceHelper.js' +import UserAuditLogHandler from '../User/UserAuditLogHandler.mjs' +import AnalyticsRegistrationSourceHelper from '../Analytics/AnalyticsRegistrationSourceHelper.mjs' import { acceptsJson } from '../../infrastructure/RequestContentTypeDetection.js' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' import Modules from '../../infrastructure/Modules.js' diff --git a/services/web/app/src/Features/Authorization/AuthorizationManager.mjs b/services/web/app/src/Features/Authorization/AuthorizationManager.mjs index 0604c28332..55ce69e738 100644 --- a/services/web/app/src/Features/Authorization/AuthorizationManager.mjs +++ b/services/web/app/src/Features/Authorization/AuthorizationManager.mjs @@ -6,12 +6,12 @@ import CollaboratorsHandler from '../Collaborators/CollaboratorsHandler.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' import { User } from '../../models/User.js' import PrivilegeLevels from './PrivilegeLevels.js' -import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.js' -import PublicAccessLevels from './PublicAccessLevels.js' +import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.mjs' +import PublicAccessLevels from './PublicAccessLevels.mjs' import Errors from '../Errors/Errors.js' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' import Settings from '@overleaf/settings' -import ChatApiHandler from '../Chat/ChatApiHandler.js' +import ChatApiHandler from '../Chat/ChatApiHandler.mjs' const { hasAdminAccess, getAdminCapabilities } = AdminAuthorizationHelper const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/Authorization/AuthorizationMiddleware.mjs b/services/web/app/src/Features/Authorization/AuthorizationMiddleware.mjs index ff9f77b2e8..bea31ca533 100644 --- a/services/web/app/src/Features/Authorization/AuthorizationMiddleware.mjs +++ b/services/web/app/src/Features/Authorization/AuthorizationMiddleware.mjs @@ -3,13 +3,13 @@ import logger from '@overleaf/logger' import mongodb from 'mongodb-legacy' import Errors from '../Errors/Errors.js' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import AuthenticationController from '../Authentication/AuthenticationController.mjs' -import SessionManager from '../Authentication/SessionManager.js' -import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.mjs' import { expressify } from '@overleaf/promise-utils' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' -import UrlHelper from '../Helpers/UrlHelper.js' +import UrlHelper from '../Helpers/UrlHelper.mjs' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/BetaProgram/BetaProgramController.mjs b/services/web/app/src/Features/BetaProgram/BetaProgramController.mjs index c7df6da6bf..4e71d10bdf 100644 --- a/services/web/app/src/Features/BetaProgram/BetaProgramController.mjs +++ b/services/web/app/src/Features/BetaProgram/BetaProgramController.mjs @@ -1,9 +1,9 @@ import BetaProgramHandler from './BetaProgramHandler.mjs' import OError from '@overleaf/o-error' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import logger from '@overleaf/logger' -import SessionManager from '../Authentication/SessionManager.js' -import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.mjs' import { expressify } from '@overleaf/promise-utils' async function optIn(req, res) { diff --git a/services/web/app/src/Features/BetaProgram/BetaProgramHandler.mjs b/services/web/app/src/Features/BetaProgram/BetaProgramHandler.mjs index 74270eafa1..520a634068 100644 --- a/services/web/app/src/Features/BetaProgram/BetaProgramHandler.mjs +++ b/services/web/app/src/Features/BetaProgram/BetaProgramHandler.mjs @@ -1,7 +1,7 @@ import { callbackify } from 'node:util' import metrics from '@overleaf/metrics' -import UserUpdater from '../User/UserUpdater.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import UserUpdater from '../User/UserUpdater.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' async function optIn(userId) { await UserUpdater.promises.updateUser(userId, { $set: { betaProgram: true } }) diff --git a/services/web/app/src/Features/Chat/ChatController.mjs b/services/web/app/src/Features/Chat/ChatController.mjs index 37aad846c1..569fa56597 100644 --- a/services/web/app/src/Features/Chat/ChatController.mjs +++ b/services/web/app/src/Features/Chat/ChatController.mjs @@ -1,8 +1,8 @@ import { expressify } from '@overleaf/promise-utils' import Modules from '../../infrastructure/Modules.js' -import ChatApiHandler from './ChatApiHandler.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' -import SessionManager from '../Authentication/SessionManager.js' +import ChatApiHandler from './ChatApiHandler.mjs' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import UserInfoManager from '../User/UserInfoManager.mjs' import UserInfoController from '../User/UserInfoController.mjs' import ChatManager from './ChatManager.mjs' diff --git a/services/web/app/src/Features/Chat/ChatManager.mjs b/services/web/app/src/Features/Chat/ChatManager.mjs index 546513360e..4acd40404d 100644 --- a/services/web/app/src/Features/Chat/ChatManager.mjs +++ b/services/web/app/src/Features/Chat/ChatManager.mjs @@ -1,5 +1,5 @@ import UserInfoController from '../User/UserInfoController.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { callbackify } from '@overleaf/promise-utils' async function injectUserInfoIntoThreads(threads) { diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsController.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsController.mjs index c409fa0622..d1769c9203 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsController.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsController.mjs @@ -1,17 +1,17 @@ import OError from '@overleaf/o-error' -import HttpErrorHandler from '../../Features/Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../../Features/Errors/HttpErrorHandler.mjs' import mongodb from 'mongodb-legacy' import CollaboratorsHandler from './CollaboratorsHandler.mjs' import CollaboratorsGetter from './CollaboratorsGetter.mjs' import OwnershipTransferHandler from './OwnershipTransferHandler.mjs' -import SessionManager from '../Authentication/SessionManager.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' -import TagsHandler from '../Tags/TagsHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' +import TagsHandler from '../Tags/TagsHandler.mjs' import Errors from '../Errors/Errors.js' import logger from '@overleaf/logger' import { expressify } from '@overleaf/promise-utils' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' -import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.js' +import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.mjs' import ProjectAuditLogHandler from '../Project/ProjectAuditLogHandler.mjs' import LimitationsManager from '../Subscription/LimitationsManager.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsEmailHandler.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsEmailHandler.mjs index d63206d031..39b1bf12df 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsEmailHandler.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsEmailHandler.mjs @@ -1,6 +1,6 @@ import { callbackify } from 'node:util' import { Project } from '../../models/Project.js' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import Settings from '@overleaf/settings' const CollaboratorsEmailHandler = { diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsGetter.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsGetter.mjs index eee692f6eb..54d2112740 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsGetter.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsGetter.mjs @@ -5,12 +5,12 @@ import pLimit from 'p-limit' import mongodb from 'mongodb-legacy' import OError from '@overleaf/o-error' import { Project } from '../../models/Project.js' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import PublicAccessLevels from '../Authorization/PublicAccessLevels.js' +import PublicAccessLevels from '../Authorization/PublicAccessLevels.mjs' import Errors from '../Errors/Errors.js' -import ProjectEditorHandler from '../Project/ProjectEditorHandler.js' -import Sources from '../Authorization/Sources.js' +import ProjectEditorHandler from '../Project/ProjectEditorHandler.mjs' +import Sources from '../Authorization/Sources.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsHandler.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsHandler.mjs index bb7b8d5540..1eee8a6936 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsHandler.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsHandler.mjs @@ -3,13 +3,13 @@ import OError from '@overleaf/o-error' import { Project } from '../../models/Project.js' import ProjectGetter from '../Project/ProjectGetter.mjs' import logger from '@overleaf/logger' -import ContactManager from '../Contacts/ContactManager.js' +import ContactManager from '../Contacts/ContactManager.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs' import CollaboratorsGetter from './CollaboratorsGetter.mjs' import Errors from '../Errors/Errors.js' import TpdsUpdateSender from '../ThirdPartyDataStore/TpdsUpdateSender.mjs' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' export default { userIsTokenMember: callbackify(userIsTokenMember), diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsInviteController.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsInviteController.mjs index 98ff3f28da..33bdefd212 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsInviteController.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsInviteController.mjs @@ -1,15 +1,15 @@ import ProjectGetter from '../Project/ProjectGetter.mjs' import LimitationsManager from '../Subscription/LimitationsManager.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import CollaboratorsGetter from './CollaboratorsGetter.mjs' import CollaboratorsInviteHandler from './CollaboratorsInviteHandler.mjs' -import CollaboratorsInviteGetter from './CollaboratorsInviteGetter.js' +import CollaboratorsInviteGetter from './CollaboratorsInviteGetter.mjs' import logger from '@overleaf/logger' import Settings from '@overleaf/settings' import EmailHelper from '../Helpers/EmailHelper.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' -import SessionManager from '../Authentication/SessionManager.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import { RateLimiter } from '../../infrastructure/RateLimiter.js' import { z, zz, validateReq } from '../../infrastructure/Validation.js' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Collaborators/CollaboratorsInviteHandler.mjs b/services/web/app/src/Features/Collaborators/CollaboratorsInviteHandler.mjs index 40654bebeb..58c99eeba5 100644 --- a/services/web/app/src/Features/Collaborators/CollaboratorsInviteHandler.mjs +++ b/services/web/app/src/Features/Collaborators/CollaboratorsInviteHandler.mjs @@ -3,11 +3,11 @@ import { ProjectInvite } from '../../models/ProjectInvite.js' import logger from '@overleaf/logger' import CollaboratorsEmailHandler from './CollaboratorsEmailHandler.mjs' import CollaboratorsHandler from './CollaboratorsHandler.mjs' -import CollaboratorsInviteGetter from './CollaboratorsInviteGetter.js' -import CollaboratorsInviteHelper from './CollaboratorsInviteHelper.js' -import UserGetter from '../User/UserGetter.js' +import CollaboratorsInviteGetter from './CollaboratorsInviteGetter.mjs' +import CollaboratorsInviteHelper from './CollaboratorsInviteHelper.mjs' +import UserGetter from '../User/UserGetter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' import LimitationsManager from '../Subscription/LimitationsManager.mjs' import ProjectAuditLogHandler from '../Project/ProjectAuditLogHandler.mjs' diff --git a/services/web/app/src/Features/Collaborators/OwnershipTransferHandler.mjs b/services/web/app/src/Features/Collaborators/OwnershipTransferHandler.mjs index 1b2ec410c2..79ed8b0435 100644 --- a/services/web/app/src/Features/Collaborators/OwnershipTransferHandler.mjs +++ b/services/web/app/src/Features/Collaborators/OwnershipTransferHandler.mjs @@ -1,16 +1,16 @@ import logger from '@overleaf/logger' import { Project } from '../../models/Project.js' import ProjectGetter from '../Project/ProjectGetter.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import CollaboratorsHandler from './CollaboratorsHandler.mjs' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import Errors from '../Errors/Errors.js' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs' import ProjectAuditLogHandler from '../Project/ProjectAuditLogHandler.mjs' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import OError from '@overleaf/o-error' -import TagsHandler from '../Tags/TagsHandler.js' +import TagsHandler from '../Tags/TagsHandler.mjs' import { promiseMapWithLimit } from '@overleaf/promise-utils' export default { diff --git a/services/web/app/src/Features/Compile/ClsiCacheController.mjs b/services/web/app/src/Features/Compile/ClsiCacheController.mjs index a03712415c..fd789afdd1 100644 --- a/services/web/app/src/Features/Compile/ClsiCacheController.mjs +++ b/services/web/app/src/Features/Compile/ClsiCacheController.mjs @@ -9,7 +9,7 @@ import logger from '@overleaf/logger' import ClsiCacheManager from './ClsiCacheManager.mjs' import CompileController from './CompileController.mjs' import { expressify } from '@overleaf/promise-utils' -import ClsiCacheHandler from './ClsiCacheHandler.js' +import ClsiCacheHandler from './ClsiCacheHandler.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' import { MeteredStream } from '@overleaf/stream-utils' import Metrics from '@overleaf/metrics' diff --git a/services/web/app/src/Features/Compile/ClsiCacheManager.mjs b/services/web/app/src/Features/Compile/ClsiCacheManager.mjs index 89b9891e38..0cec56cdfb 100644 --- a/services/web/app/src/Features/Compile/ClsiCacheManager.mjs +++ b/services/web/app/src/Features/Compile/ClsiCacheManager.mjs @@ -1,9 +1,9 @@ import _ from 'lodash' import { NotFoundError, ResourceGoneError } from '../Errors/Errors.js' -import ClsiCacheHandler from './ClsiCacheHandler.js' +import ClsiCacheHandler from './ClsiCacheHandler.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import Settings from '@overleaf/settings' import { fetchJson, RequestFailedError } from '@overleaf/fetch-utils' import Metrics from '@overleaf/metrics' diff --git a/services/web/app/src/Features/Compile/ClsiManager.mjs b/services/web/app/src/Features/Compile/ClsiManager.mjs index 51cb9d083a..02f76ece42 100644 --- a/services/web/app/src/Features/Compile/ClsiManager.mjs +++ b/services/web/app/src/Features/Compile/ClsiManager.mjs @@ -19,10 +19,10 @@ import ClsiFormatChecker from './ClsiFormatChecker.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import Metrics from '@overleaf/metrics' import Errors from '../Errors/Errors.js' -import ClsiCacheHandler from './ClsiCacheHandler.js' +import ClsiCacheHandler from './ClsiCacheHandler.mjs' import HistoryManager from '../History/HistoryManager.mjs' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' const ClsiCookieManager = ClsiCookieManagerFactory( Settings.apis.clsi?.backendGroupName diff --git a/services/web/app/src/Features/Compile/CompileController.mjs b/services/web/app/src/Features/Compile/CompileController.mjs index f80be8bf18..8e6382c2ec 100644 --- a/services/web/app/src/Features/Compile/CompileController.mjs +++ b/services/web/app/src/Features/Compile/CompileController.mjs @@ -9,13 +9,13 @@ import ClsiManager from './ClsiManager.mjs' import logger from '@overleaf/logger' import Settings from '@overleaf/settings' import Errors from '../Errors/Errors.js' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import { RateLimiter } from '../../infrastructure/RateLimiter.js' import Validation from '../../infrastructure/Validation.js' import ClsiCookieManagerFactory from './ClsiCookieManager.mjs' import Path from 'node:path' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' import { expressify } from '@overleaf/promise-utils' import { fetchStreamWithResponse, diff --git a/services/web/app/src/Features/Compile/CompileManager.mjs b/services/web/app/src/Features/Compile/CompileManager.mjs index 9c12e7575a..c951326fc4 100644 --- a/services/web/app/src/Features/Compile/CompileManager.mjs +++ b/services/web/app/src/Features/Compile/CompileManager.mjs @@ -3,11 +3,11 @@ import Settings from '@overleaf/settings' import RedisWrapper from '../../infrastructure/RedisWrapper.js' import ProjectGetter from '../Project/ProjectGetter.mjs' import ProjectRootDocManager from '../Project/ProjectRootDocManager.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import ClsiManager from './ClsiManager.mjs' import Metrics from '@overleaf/metrics' import { RateLimiter } from '../../infrastructure/RateLimiter.js' -import UserAnalyticsIdCache from '../Analytics/UserAnalyticsIdCache.js' +import UserAnalyticsIdCache from '../Analytics/UserAnalyticsIdCache.mjs' import { callbackify, callbackifyMultiResult } from '@overleaf/promise-utils' let CompileManager const rclient = RedisWrapper.client('clsi_recently_compiled') diff --git a/services/web/app/src/Features/Contacts/ContactController.mjs b/services/web/app/src/Features/Contacts/ContactController.mjs index 12567d64c6..7b02318d91 100644 --- a/services/web/app/src/Features/Contacts/ContactController.mjs +++ b/services/web/app/src/Features/Contacts/ContactController.mjs @@ -1,6 +1,6 @@ -import SessionManager from '../Authentication/SessionManager.js' -import ContactManager from './ContactManager.js' -import UserGetter from '../User/UserGetter.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import ContactManager from './ContactManager.mjs' +import UserGetter from '../User/UserGetter.mjs' import Modules from '../../infrastructure/Modules.js' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Contacts/ContactRouter.mjs b/services/web/app/src/Features/Contacts/ContactRouter.mjs index b361142852..d4078e4f7c 100644 --- a/services/web/app/src/Features/Contacts/ContactRouter.mjs +++ b/services/web/app/src/Features/Contacts/ContactRouter.mjs @@ -1,5 +1,5 @@ import AuthenticationController from '../Authentication/AuthenticationController.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import ContactController from './ContactController.mjs' import Settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/Documents/DocumentController.mjs b/services/web/app/src/Features/Documents/DocumentController.mjs index 682d17f412..399240d53a 100644 --- a/services/web/app/src/Features/Documents/DocumentController.mjs +++ b/services/web/app/src/Features/Documents/DocumentController.mjs @@ -1,4 +1,4 @@ -import ChatApiHandler from '../Chat/ChatApiHandler.js' +import ChatApiHandler from '../Chat/ChatApiHandler.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' import ProjectLocator from '../Project/ProjectLocator.mjs' import ProjectEntityHandler from '../Project/ProjectEntityHandler.mjs' diff --git a/services/web/app/src/Features/Editor/EditorController.mjs b/services/web/app/src/Features/Editor/EditorController.mjs index 081d970f11..a3fd2b0062 100644 --- a/services/web/app/src/Features/Editor/EditorController.mjs +++ b/services/web/app/src/Features/Editor/EditorController.mjs @@ -2,12 +2,12 @@ import logger from '@overleaf/logger' import OError from '@overleaf/o-error' import Metrics from '@overleaf/metrics' import ProjectEntityUpdateHandler from '../Project/ProjectEntityUpdateHandler.mjs' -import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.js' +import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.mjs' import ProjectDetailsHandler from '../Project/ProjectDetailsHandler.mjs' import ProjectDeleter from '../Project/ProjectDeleter.mjs' -import EditorRealTimeController from './EditorRealTimeController.js' +import EditorRealTimeController from './EditorRealTimeController.mjs' import async from 'async' -import PublicAccessLevels from '../Authorization/PublicAccessLevels.js' +import PublicAccessLevels from '../Authorization/PublicAccessLevels.mjs' import { promisifyAll } from '@overleaf/promise-utils' const EditorController = { diff --git a/services/web/app/src/Features/Editor/EditorHttpController.mjs b/services/web/app/src/Features/Editor/EditorHttpController.mjs index 22ba2c2e15..2c79bf3131 100644 --- a/services/web/app/src/Features/Editor/EditorHttpController.mjs +++ b/services/web/app/src/Features/Editor/EditorHttpController.mjs @@ -2,11 +2,11 @@ import ProjectDeleter from '../Project/ProjectDeleter.mjs' import EditorController from './EditorController.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' import AuthorizationManager from '../Authorization/AuthorizationManager.mjs' -import ProjectEditorHandler from '../Project/ProjectEditorHandler.js' +import ProjectEditorHandler from '../Project/ProjectEditorHandler.mjs' import Metrics from '@overleaf/metrics' -import CollaboratorsInviteGetter from '../Collaborators/CollaboratorsInviteGetter.js' +import CollaboratorsInviteGetter from '../Collaborators/CollaboratorsInviteGetter.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import Errors from '../Errors/Errors.js' import { expressify } from '@overleaf/promise-utils' import Settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/Errors/ErrorController.mjs b/services/web/app/src/Features/Errors/ErrorController.mjs index 6a56b99669..25b297eb0e 100644 --- a/services/web/app/src/Features/Errors/ErrorController.mjs +++ b/services/web/app/src/Features/Errors/ErrorController.mjs @@ -1,8 +1,8 @@ import { isZodErrorLike, fromZodError } from 'zod-validation-error' import Errors from './Errors.js' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import SamlLogHandler from '../SamlLog/SamlLogHandler.mjs' -import HttpErrorHandler from './HttpErrorHandler.js' +import HttpErrorHandler from './HttpErrorHandler.mjs' import { plainTextResponse } from '../../infrastructure/Response.js' import { expressifyErrorHandler } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Exports/ExportsController.mjs b/services/web/app/src/Features/Exports/ExportsController.mjs index 28261cb5f6..d80166a8d5 100644 --- a/services/web/app/src/Features/Exports/ExportsController.mjs +++ b/services/web/app/src/Features/Exports/ExportsController.mjs @@ -11,7 +11,7 @@ */ import ExportsHandler from './ExportsHandler.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import logger from '@overleaf/logger' export default { diff --git a/services/web/app/src/Features/Exports/ExportsHandler.mjs b/services/web/app/src/Features/Exports/ExportsHandler.mjs index aa235f434e..89a05efec8 100644 --- a/services/web/app/src/Features/Exports/ExportsHandler.mjs +++ b/services/web/app/src/Features/Exports/ExportsHandler.mjs @@ -16,7 +16,7 @@ import ProjectGetter from '../Project/ProjectGetter.mjs' import ProjectHistoryHandler from '../Project/ProjectHistoryHandler.mjs' import ProjectLocator from '../Project/ProjectLocator.mjs' import ProjectRootDocManager from '../Project/ProjectRootDocManager.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import logger from '@overleaf/logger' import settings from '@overleaf/settings' import async from 'async' diff --git a/services/web/app/src/Features/FileStore/FileStoreHandler.mjs b/services/web/app/src/Features/FileStore/FileStoreHandler.mjs index 89b338f80b..982616f44b 100644 --- a/services/web/app/src/Features/FileStore/FileStoreHandler.mjs +++ b/services/web/app/src/Features/FileStore/FileStoreHandler.mjs @@ -1,7 +1,7 @@ import logger from '@overleaf/logger' import fs from 'node:fs' import Async from 'async' -import FileHashManager from './FileHashManager.js' +import FileHashManager from './FileHashManager.mjs' import HistoryManager from '../History/HistoryManager.mjs' import ProjectDetailsHandler from '../Project/ProjectDetailsHandler.mjs' import { File } from '../../models/File.js' diff --git a/services/web/app/src/Features/HealthCheck/HealthCheckController.mjs b/services/web/app/src/Features/HealthCheck/HealthCheckController.mjs index a6de9e55a4..d8e5a6d0ee 100644 --- a/services/web/app/src/Features/HealthCheck/HealthCheckController.mjs +++ b/services/web/app/src/Features/HealthCheck/HealthCheckController.mjs @@ -1,7 +1,7 @@ import RedisWrapper from '../../infrastructure/RedisWrapper.js' import settings from '@overleaf/settings' import logger from '@overleaf/logger' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { SmokeTestFailure, runSmokeTests, diff --git a/services/web/app/src/Features/Helpers/AdminAuthorizationHelper.mjs b/services/web/app/src/Features/Helpers/AdminAuthorizationHelper.mjs index e8746c5a5f..6a7fde9d79 100644 --- a/services/web/app/src/Features/Helpers/AdminAuthorizationHelper.mjs +++ b/services/web/app/src/Features/Helpers/AdminAuthorizationHelper.mjs @@ -1,7 +1,7 @@ import Settings from '@overleaf/settings' import Modules from '../../infrastructure/Modules.js' import { expressify } from '@overleaf/promise-utils' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import logger from '@overleaf/logger' export default { diff --git a/services/web/app/src/Features/History/HistoryController.mjs b/services/web/app/src/Features/History/HistoryController.mjs index 269dcdfd44..0961936356 100644 --- a/services/web/app/src/Features/History/HistoryController.mjs +++ b/services/web/app/src/Features/History/HistoryController.mjs @@ -15,8 +15,8 @@ import { } from '@overleaf/fetch-utils' import settings from '@overleaf/settings' -import SessionManager from '../Authentication/SessionManager.js' -import UserGetter from '../User/UserGetter.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import UserGetter from '../User/UserGetter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' import Errors from '../Errors/Errors.js' import HistoryManager from './HistoryManager.mjs' diff --git a/services/web/app/src/Features/History/HistoryManager.mjs b/services/web/app/src/Features/History/HistoryManager.mjs index 5f312a752f..ccb17fd277 100644 --- a/services/web/app/src/Features/History/HistoryManager.mjs +++ b/services/web/app/src/Features/History/HistoryManager.mjs @@ -8,9 +8,9 @@ import { import fs from 'node:fs' import settings from '@overleaf/settings' import OError from '@overleaf/o-error' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import HistoryBackupDeletionHandler from './HistoryBackupDeletionHandler.js' +import HistoryBackupDeletionHandler from './HistoryBackupDeletionHandler.mjs' import { db, waitForDb } from '../../infrastructure/mongodb.js' import Metrics from '@overleaf/metrics' import { NotFoundError } from '../Errors/Errors.js' diff --git a/services/web/app/src/Features/History/HistoryOTMigration.mjs b/services/web/app/src/Features/History/HistoryOTMigration.mjs index 4ea4702515..a2523a51ef 100644 --- a/services/web/app/src/Features/History/HistoryOTMigration.mjs +++ b/services/web/app/src/Features/History/HistoryOTMigration.mjs @@ -2,7 +2,7 @@ import ProjectGetter from '../Project/ProjectGetter.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import HistoryManager from '../History/HistoryManager.mjs' import * as RealTimeHandler from '../References/RealTime/RealTimeHandler.mjs' -import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.js' +import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.mjs' import { NotFoundError, FoundConnectedClientsError, diff --git a/services/web/app/src/Features/History/HistoryRangesSupportMigration.mjs b/services/web/app/src/Features/History/HistoryRangesSupportMigration.mjs index edf67c04ea..76dcdb17a5 100644 --- a/services/web/app/src/Features/History/HistoryRangesSupportMigration.mjs +++ b/services/web/app/src/Features/History/HistoryRangesSupportMigration.mjs @@ -5,8 +5,8 @@ import OError from '@overleaf/o-error' import logger from '@overleaf/logger' import HistoryManager from '../History/HistoryManager.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' -import DocstoreManager from '../Docstore/DocstoreManager.js' -import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' +import ProjectOptionsHandler from '../Project/ProjectOptionsHandler.mjs' import mongodb from '../../infrastructure/mongodb.js' const { db, ObjectId, READ_PREFERENCE_SECONDARY } = mongodb diff --git a/services/web/app/src/Features/History/RestoreManager.mjs b/services/web/app/src/Features/History/RestoreManager.mjs index 62ad83526b..c758b97c5b 100644 --- a/services/web/app/src/Features/History/RestoreManager.mjs +++ b/services/web/app/src/Features/History/RestoreManager.mjs @@ -3,17 +3,17 @@ import Path from 'node:path' import FileWriter from '../../infrastructure/FileWriter.js' import Metrics from '../../infrastructure/Metrics.js' import FileSystemImportManager from '../Uploads/FileSystemImportManager.mjs' -import FileTypeManager from '../Uploads/FileTypeManager.js' +import FileTypeManager from '../Uploads/FileTypeManager.mjs' import EditorController from '../Editor/EditorController.mjs' import Errors from '../Errors/Errors.js' import moment from 'moment' import { callbackifyAll } from '@overleaf/promise-utils' import ProjectLocator from '../Project/ProjectLocator.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' -import ChatApiHandler from '../Chat/ChatApiHandler.js' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import ChatApiHandler from '../Chat/ChatApiHandler.mjs' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import logger from '@overleaf/logger' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import ChatManager from '../Chat/ChatManager.mjs' import OError from '@overleaf/o-error' import ProjectGetter from '../Project/ProjectGetter.mjs' diff --git a/services/web/app/src/Features/InactiveData/InactiveProjectManager.mjs b/services/web/app/src/Features/InactiveData/InactiveProjectManager.mjs index e446ffd867..6ec4c0f6b4 100644 --- a/services/web/app/src/Features/InactiveData/InactiveProjectManager.mjs +++ b/services/web/app/src/Features/InactiveData/InactiveProjectManager.mjs @@ -1,9 +1,9 @@ import OError from '@overleaf/o-error' import logger from '@overleaf/logger' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import ProjectUpdateHandler from '../Project/ProjectUpdateHandler.js' +import ProjectUpdateHandler from '../Project/ProjectUpdateHandler.mjs' import { Project } from '../../models/Project.js' import Modules from '../../infrastructure/Modules.js' import { READ_PREFERENCE_SECONDARY } from '../../infrastructure/mongodb.js' diff --git a/services/web/app/src/Features/Institutions/InstitutionsGetter.mjs b/services/web/app/src/Features/Institutions/InstitutionsGetter.mjs index 1f81635fce..3467d1f2fa 100644 --- a/services/web/app/src/Features/Institutions/InstitutionsGetter.mjs +++ b/services/web/app/src/Features/Institutions/InstitutionsGetter.mjs @@ -1,7 +1,7 @@ import { promisify, callbackify } from 'node:util' -import UserGetter from '../User/UserGetter.js' -import UserMembershipsHandler from '../UserMembership/UserMembershipsHandler.js' -import UserMembershipEntityConfigs from '../UserMembership/UserMembershipEntityConfigs.js' +import UserGetter from '../User/UserGetter.mjs' +import UserMembershipsHandler from '../UserMembership/UserMembershipsHandler.mjs' +import UserMembershipEntityConfigs from '../UserMembership/UserMembershipEntityConfigs.mjs' async function getCurrentAffiliations(userId) { const fullEmails = await UserGetter.promises.getUserFullEmails(userId) diff --git a/services/web/app/src/Features/Institutions/InstitutionsManager.mjs b/services/web/app/src/Features/Institutions/InstitutionsManager.mjs index 605df1acbb..9c6c9d2f6e 100644 --- a/services/web/app/src/Features/Institutions/InstitutionsManager.mjs +++ b/services/web/app/src/Features/Institutions/InstitutionsManager.mjs @@ -3,13 +3,13 @@ import mongodb from 'mongodb-legacy' import Settings from '@overleaf/settings' import logger from '@overleaf/logger' import { fetchJson } from '@overleaf/fetch-utils' -import InstitutionsAPI from './InstitutionsAPI.js' -import FeaturesUpdater from '../Subscription/FeaturesUpdater.js' -import FeaturesHelper from '../Subscription/FeaturesHelper.js' -import UserGetter from '../User/UserGetter.js' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' -import NotificationsHandler from '../Notifications/NotificationsHandler.js' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' +import InstitutionsAPI from './InstitutionsAPI.mjs' +import FeaturesUpdater from '../Subscription/FeaturesUpdater.mjs' +import FeaturesHelper from '../Subscription/FeaturesHelper.mjs' +import UserGetter from '../User/UserGetter.mjs' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' +import NotificationsHandler from '../Notifications/NotificationsHandler.mjs' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' import { Institution } from '../../models/Institution.js' import { Subscription } from '../../models/Subscription.js' import OError from '@overleaf/o-error' diff --git a/services/web/app/src/Features/LinkedFiles/LinkedFilesController.mjs b/services/web/app/src/Features/LinkedFiles/LinkedFilesController.mjs index 70e53dd743..f60be663da 100644 --- a/services/web/app/src/Features/LinkedFiles/LinkedFilesController.mjs +++ b/services/web/app/src/Features/LinkedFiles/LinkedFilesController.mjs @@ -10,10 +10,10 @@ * DS207: Consider shorter variations of null checks * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md */ -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import Settings from '@overleaf/settings' import _ from 'lodash' -import AnalyticsManager from '../../../../app/src/Features/Analytics/AnalyticsManager.js' +import AnalyticsManager from '../../../../app/src/Features/Analytics/AnalyticsManager.mjs' import LinkedFilesHandler from './LinkedFilesHandler.mjs' import LinkedFilesErrors from './LinkedFilesErrors.mjs' import { @@ -23,7 +23,7 @@ import { import Modules from '../../infrastructure/Modules.js' import { plainTextResponse } from '../../infrastructure/Response.js' import { z, zz, validateReq } from '../../infrastructure/Validation.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import { expressify } from '@overleaf/promise-utils' import ProjectOutputFileAgent from './ProjectOutputFileAgent.mjs' import ProjectFileAgent from './ProjectFileAgent.mjs' diff --git a/services/web/app/src/Features/LinkedFiles/ProjectFileAgent.mjs b/services/web/app/src/Features/LinkedFiles/ProjectFileAgent.mjs index 191c230d3a..dfd3d8e112 100644 --- a/services/web/app/src/Features/LinkedFiles/ProjectFileAgent.mjs +++ b/services/web/app/src/Features/LinkedFiles/ProjectFileAgent.mjs @@ -12,7 +12,7 @@ */ import AuthorizationManager from '../Authorization/AuthorizationManager.mjs' import ProjectLocator from '../Project/ProjectLocator.mjs' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import _ from 'lodash' import LinkedFilesHandler from './LinkedFilesHandler.mjs' diff --git a/services/web/app/src/Features/LinkedFiles/UrlAgent.mjs b/services/web/app/src/Features/LinkedFiles/UrlAgent.mjs index 12612bff2f..732724ad77 100644 --- a/services/web/app/src/Features/LinkedFiles/UrlAgent.mjs +++ b/services/web/app/src/Features/LinkedFiles/UrlAgent.mjs @@ -2,7 +2,7 @@ import logger from '@overleaf/logger' import urlValidator from 'valid-url' import LinkedFilesErrors from './LinkedFilesErrors.mjs' import LinkedFilesHandler from './LinkedFilesHandler.mjs' -import UrlHelper from '../Helpers/UrlHelper.js' +import UrlHelper from '../Helpers/UrlHelper.mjs' import { fetchStream, RequestFailedError } from '@overleaf/fetch-utils' import { callbackify } from '@overleaf/promise-utils' import { FileTooLargeError } from '../Errors/Errors.js' diff --git a/services/web/app/src/Features/Metadata/MetaController.mjs b/services/web/app/src/Features/Metadata/MetaController.mjs index 417217ecb3..6d869c3c54 100644 --- a/services/web/app/src/Features/Metadata/MetaController.mjs +++ b/services/web/app/src/Features/Metadata/MetaController.mjs @@ -1,5 +1,5 @@ import OError from '@overleaf/o-error' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import MetaHandler from './MetaHandler.mjs' import logger from '@overleaf/logger' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Notifications/NotificationsController.mjs b/services/web/app/src/Features/Notifications/NotificationsController.mjs index 35b5f0a677..015d66580d 100644 --- a/services/web/app/src/Features/Notifications/NotificationsController.mjs +++ b/services/web/app/src/Features/Notifications/NotificationsController.mjs @@ -1,5 +1,5 @@ -import NotificationsHandler from './NotificationsHandler.js' -import SessionManager from '../Authentication/SessionManager.js' +import NotificationsHandler from './NotificationsHandler.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import _ from 'lodash' export default { diff --git a/services/web/app/src/Features/PasswordReset/PasswordResetController.mjs b/services/web/app/src/Features/PasswordReset/PasswordResetController.mjs index d4140ef90a..d9221f23b5 100644 --- a/services/web/app/src/Features/PasswordReset/PasswordResetController.mjs +++ b/services/web/app/src/Features/PasswordReset/PasswordResetController.mjs @@ -1,10 +1,10 @@ import PasswordResetHandler from './PasswordResetHandler.mjs' import AuthenticationController from '../Authentication/AuthenticationController.mjs' -import AuthenticationManager from '../Authentication/AuthenticationManager.js' -import SessionManager from '../Authentication/SessionManager.js' -import UserGetter from '../User/UserGetter.js' -import UserUpdater from '../User/UserUpdater.js' -import UserSessionsManager from '../User/UserSessionsManager.js' +import AuthenticationManager from '../Authentication/AuthenticationManager.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' +import UserGetter from '../User/UserGetter.mjs' +import UserUpdater from '../User/UserUpdater.mjs' +import UserSessionsManager from '../User/UserSessionsManager.mjs' import OError from '@overleaf/o-error' import EmailsHelper from '../Helpers/EmailHelper.js' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/PasswordReset/PasswordResetHandler.mjs b/services/web/app/src/Features/PasswordReset/PasswordResetHandler.mjs index 995306a431..5ff08f36c2 100644 --- a/services/web/app/src/Features/PasswordReset/PasswordResetHandler.mjs +++ b/services/web/app/src/Features/PasswordReset/PasswordResetHandler.mjs @@ -1,9 +1,9 @@ import settings from '@overleaf/settings' -import UserAuditLogHandler from '../User/UserAuditLogHandler.js' -import UserGetter from '../User/UserGetter.js' +import UserAuditLogHandler from '../User/UserAuditLogHandler.mjs' +import UserGetter from '../User/UserGetter.mjs' import OneTimeTokenHandler from '../Security/OneTimeTokenHandler.js' -import EmailHandler from '../Email/EmailHandler.js' -import AuthenticationManager from '../Authentication/AuthenticationManager.js' +import EmailHandler from '../Email/EmailHandler.mjs' +import AuthenticationManager from '../Authentication/AuthenticationManager.mjs' import { callbackify, promisify } from 'node:util' import PermissionsManager from '../Authorization/PermissionsManager.mjs' diff --git a/services/web/app/src/Features/Project/ProjectController.mjs b/services/web/app/src/Features/Project/ProjectController.mjs index 630c66c7c0..8bac8835b9 100644 --- a/services/web/app/src/Features/Project/ProjectController.mjs +++ b/services/web/app/src/Features/Project/ProjectController.mjs @@ -10,43 +10,43 @@ import ProjectDeleter from './ProjectDeleter.mjs' import ProjectDuplicator from './ProjectDuplicator.mjs' import ProjectCreationHandler from './ProjectCreationHandler.mjs' import EditorController from '../Editor/EditorController.mjs' -import ProjectHelper from './ProjectHelper.js' +import ProjectHelper from './ProjectHelper.mjs' import metrics from '@overleaf/metrics' import { User } from '../../models/User.js' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' import { isPaidSubscription } from '../Subscription/SubscriptionHelper.js' import LimitationsManager from '../Subscription/LimitationsManager.mjs' import Settings from '@overleaf/settings' import AuthorizationManager from '../Authorization/AuthorizationManager.mjs' import InactiveProjectManager from '../InactiveData/InactiveProjectManager.mjs' -import ProjectUpdateHandler from './ProjectUpdateHandler.js' +import ProjectUpdateHandler from './ProjectUpdateHandler.mjs' import ProjectGetter from './ProjectGetter.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' -import SessionManager from '../Authentication/SessionManager.js' -import Sources from '../Authorization/Sources.js' -import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import Sources from '../Authorization/Sources.mjs' +import TokenAccessHandler from '../TokenAccess/TokenAccessHandler.mjs' import CollaboratorsGetter from '../Collaborators/CollaboratorsGetter.mjs' import ProjectEntityHandler from './ProjectEntityHandler.mjs' import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs' import Features from '../../infrastructure/Features.js' import BrandVariationsHandler from '../BrandVariations/BrandVariationsHandler.mjs' import UserController from '../User/UserController.mjs' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' -import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.js' -import FeaturesUpdater from '../Subscription/FeaturesUpdater.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' +import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.mjs' +import FeaturesUpdater from '../Subscription/FeaturesUpdater.mjs' import SpellingHandler from '../Spelling/SpellingHandler.mjs' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' -import InstitutionsFeatures from '../Institutions/InstitutionsFeatures.js' +import InstitutionsFeatures from '../Institutions/InstitutionsFeatures.mjs' import InstitutionsGetter from '../Institutions/InstitutionsGetter.mjs' import ProjectAuditLogHandler from './ProjectAuditLogHandler.mjs' -import PublicAccessLevels from '../Authorization/PublicAccessLevels.js' -import TagsHandler from '../Tags/TagsHandler.js' +import PublicAccessLevels from '../Authorization/PublicAccessLevels.mjs' +import TagsHandler from '../Tags/TagsHandler.mjs' import TutorialHandler from '../Tutorial/TutorialHandler.mjs' -import UserUpdater from '../User/UserUpdater.js' +import UserUpdater from '../User/UserUpdater.mjs' import Modules from '../../infrastructure/Modules.js' import { z, zz, validateReq } from '../../infrastructure/Validation.js' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { isStandaloneAiAddOnPlanCode } from '../Subscription/AiHelper.js' import SubscriptionController from '../Subscription/SubscriptionController.mjs' import { formatCurrency } from '../../util/currency.js' diff --git a/services/web/app/src/Features/Project/ProjectCreationHandler.mjs b/services/web/app/src/Features/Project/ProjectCreationHandler.mjs index 0639eec623..ef614f7f05 100644 --- a/services/web/app/src/Features/Project/ProjectCreationHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectCreationHandler.mjs @@ -13,9 +13,9 @@ import fs from 'node:fs' import path from 'node:path' import { callbackify } from 'node:util' import _ from 'lodash' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import TpdsUpdateSender from '../ThirdPartyDataStore/TpdsUpdateSender.mjs' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/Project/ProjectDeleter.mjs b/services/web/app/src/Features/Project/ProjectDeleter.mjs index 29826d440a..276e3765cb 100644 --- a/services/web/app/src/Features/Project/ProjectDeleter.mjs +++ b/services/web/app/src/Features/Project/ProjectDeleter.mjs @@ -13,14 +13,14 @@ import Errors from '../Errors/Errors.js' import logger from '@overleaf/logger' import Settings from '@overleaf/settings' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' -import TagsHandler from '../Tags/TagsHandler.js' +import TagsHandler from '../Tags/TagsHandler.mjs' import ProjectDetailsHandler from './ProjectDetailsHandler.mjs' import CollaboratorsHandler from '../Collaborators/CollaboratorsHandler.mjs' import CollaboratorsGetter from '../Collaborators/CollaboratorsGetter.mjs' -import DocstoreManager from '../Docstore/DocstoreManager.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import HistoryManager from '../History/HistoryManager.mjs' -import ChatApiHandler from '../Chat/ChatApiHandler.js' +import ChatApiHandler from '../Chat/ChatApiHandler.mjs' import { promiseMapWithLimit } from '@overleaf/promise-utils' const PROJECT_EXPIRATION_BATCH_SIZE = 10000 diff --git a/services/web/app/src/Features/Project/ProjectDetailsHandler.mjs b/services/web/app/src/Features/Project/ProjectDetailsHandler.mjs index 4344e42150..758429dae6 100644 --- a/services/web/app/src/Features/Project/ProjectDetailsHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectDetailsHandler.mjs @@ -1,13 +1,13 @@ import _ from 'lodash' import ProjectGetter from './ProjectGetter.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { Project } from '../../models/Project.js' import logger from '@overleaf/logger' import TpdsUpdateSender from '../ThirdPartyDataStore/TpdsUpdateSender.mjs' -import PublicAccessLevels from '../Authorization/PublicAccessLevels.js' +import PublicAccessLevels from '../Authorization/PublicAccessLevels.mjs' import Errors from '../Errors/Errors.js' import TokenGenerator from '../TokenGenerator/TokenGenerator.js' -import ProjectHelper from './ProjectHelper.js' +import ProjectHelper from './ProjectHelper.mjs' import settings from '@overleaf/settings' import { callbackify } from 'node:util' diff --git a/services/web/app/src/Features/Project/ProjectDuplicator.mjs b/services/web/app/src/Features/Project/ProjectDuplicator.mjs index 1f015a0522..1f2ec0f773 100644 --- a/services/web/app/src/Features/Project/ProjectDuplicator.mjs +++ b/services/web/app/src/Features/Project/ProjectDuplicator.mjs @@ -5,7 +5,7 @@ import OError from '@overleaf/o-error' import { promiseMapWithLimit } from '@overleaf/promise-utils' import { Doc } from '../../models/Doc.js' import { File } from '../../models/File.js' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import HistoryManager from '../History/HistoryManager.mjs' import ProjectCreationHandler from './ProjectCreationHandler.mjs' @@ -14,11 +14,11 @@ import ProjectEntityMongoUpdateHandler from './ProjectEntityMongoUpdateHandler.m import ProjectEntityUpdateHandler from './ProjectEntityUpdateHandler.mjs' import ProjectGetter from './ProjectGetter.mjs' import ProjectLocator from './ProjectLocator.mjs' -import ProjectOptionsHandler from './ProjectOptionsHandler.js' -import SafePath from './SafePath.js' +import ProjectOptionsHandler from './ProjectOptionsHandler.mjs' +import SafePath from './SafePath.mjs' import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs' import _ from 'lodash' -import TagsHandler from '../Tags/TagsHandler.js' +import TagsHandler from '../Tags/TagsHandler.mjs' import ClsiCacheManager from '../Compile/ClsiCacheManager.mjs' import Modules from '../../infrastructure/Modules.js' diff --git a/services/web/app/src/Features/Project/ProjectEntityHandler.mjs b/services/web/app/src/Features/Project/ProjectEntityHandler.mjs index 9cd42ecb31..8a2e18c0d8 100644 --- a/services/web/app/src/Features/Project/ProjectEntityHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectEntityHandler.mjs @@ -1,5 +1,5 @@ import path from 'node:path' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import Errors from '../Errors/Errors.js' import ProjectGetter from './ProjectGetter.mjs' import { callbackifyAll } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs b/services/web/app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs index 77f917d1b7..2843621d52 100644 --- a/services/web/app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs @@ -13,8 +13,8 @@ import { Project } from '../../models/Project.js' import ProjectEntityHandler from './ProjectEntityHandler.mjs' import ProjectGetter from './ProjectGetter.mjs' import ProjectLocator from './ProjectLocator.mjs' -import FolderStructureBuilder from './FolderStructureBuilder.js' -import SafePath from './SafePath.js' +import FolderStructureBuilder from './FolderStructureBuilder.mjs' +import SafePath from './SafePath.mjs' import { iterablePaths } from './IterablePath.js' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/Project/ProjectEntityUpdateHandler.mjs b/services/web/app/src/Features/Project/ProjectEntityUpdateHandler.mjs index 0b2cd5b11d..0a482cea73 100644 --- a/services/web/app/src/Features/Project/ProjectEntityUpdateHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectEntityUpdateHandler.mjs @@ -5,7 +5,7 @@ import Settings from '@overleaf/settings' import Path from 'node:path' import fs from 'node:fs' import { Doc } from '../../models/Doc.js' -import DocstoreManager from '../Docstore/DocstoreManager.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../../Features/DocumentUpdater/DocumentUpdaterHandler.mjs' import Errors from '../Errors/Errors.js' import FileStoreHandler from '../FileStore/FileStoreHandler.mjs' @@ -14,13 +14,13 @@ import { Project } from '../../models/Project.js' import ProjectEntityHandler from './ProjectEntityHandler.mjs' import ProjectGetter from './ProjectGetter.mjs' import ProjectLocator from './ProjectLocator.mjs' -import ProjectOptionsHandler from './ProjectOptionsHandler.js' -import ProjectUpdateHandler from './ProjectUpdateHandler.js' +import ProjectOptionsHandler from './ProjectOptionsHandler.mjs' +import ProjectUpdateHandler from './ProjectUpdateHandler.mjs' import ProjectEntityMongoUpdateHandler from './ProjectEntityMongoUpdateHandler.mjs' -import SafePath from './SafePath.js' +import SafePath from './SafePath.mjs' import TpdsUpdateSender from '../ThirdPartyDataStore/TpdsUpdateSender.mjs' import FileWriter from '../../infrastructure/FileWriter.js' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import { callbackifyMultiResult, callbackify } from '@overleaf/promise-utils' import { iterablePaths } from './IterablePath.js' diff --git a/services/web/app/src/Features/Project/ProjectListController.mjs b/services/web/app/src/Features/Project/ProjectListController.mjs index 67313e24fe..2e5a5fc1e3 100644 --- a/services/web/app/src/Features/Project/ProjectListController.mjs +++ b/services/web/app/src/Features/Project/ProjectListController.mjs @@ -4,32 +4,32 @@ import moment from 'moment' import Metrics from '@overleaf/metrics' import Settings from '@overleaf/settings' -import ProjectHelper from './ProjectHelper.js' +import ProjectHelper from './ProjectHelper.mjs' import ProjectGetter from './ProjectGetter.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' -import SessionManager from '../Authentication/SessionManager.js' -import Sources from '../Authorization/Sources.js' -import UserGetter from '../User/UserGetter.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import Sources from '../Authorization/Sources.mjs' +import UserGetter from '../User/UserGetter.mjs' import SurveyHandler from '../Survey/SurveyHandler.mjs' -import TagsHandler from '../Tags/TagsHandler.js' +import TagsHandler from '../Tags/TagsHandler.mjs' import { expressify } from '@overleaf/promise-utils' import logger from '@overleaf/logger' import Features from '../../infrastructure/Features.js' import SubscriptionViewModelBuilder from '../Subscription/SubscriptionViewModelBuilder.mjs' -import NotificationsHandler from '../Notifications/NotificationsHandler.js' +import NotificationsHandler from '../Notifications/NotificationsHandler.mjs' import Modules from '../../infrastructure/Modules.js' import { OError, V1ConnectionError } from '../Errors/Errors.js' import { User } from '../../models/User.js' import UserPrimaryEmailCheckHandler from '../User/UserPrimaryEmailCheckHandler.mjs' import UserController from '../User/UserController.mjs' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' import GeoIpLookup from '../../infrastructure/GeoIpLookup.mjs' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' -import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' +import SplitTestSessionHandler from '../SplitTests/SplitTestSessionHandler.mjs' import TutorialHandler from '../Tutorial/TutorialHandler.mjs' import SubscriptionHelper from '../Subscription/SubscriptionHelper.js' import PermissionsManager from '../Authorization/PermissionsManager.mjs' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import { OnboardingDataCollection } from '../../models/OnboardingDataCollection.js' import UserSettingsHelper from './UserSettingsHelper.mjs' diff --git a/services/web/app/src/Features/Project/ProjectRootDocManager.mjs b/services/web/app/src/Features/Project/ProjectRootDocManager.mjs index 6f76f1e01f..3fff847fd1 100644 --- a/services/web/app/src/Features/Project/ProjectRootDocManager.mjs +++ b/services/web/app/src/Features/Project/ProjectRootDocManager.mjs @@ -15,7 +15,7 @@ import ProjectEntityHandler from './ProjectEntityHandler.mjs' import ProjectEntityUpdateHandler from './ProjectEntityUpdateHandler.mjs' import ProjectGetter from './ProjectGetter.mjs' -import DocumentHelper from '../Documents/DocumentHelper.js' +import DocumentHelper from '../Documents/DocumentHelper.mjs' import Path from 'node:path' import fs from 'node:fs' import async from 'async' diff --git a/services/web/app/src/Features/Referal/ReferalAllocator.mjs b/services/web/app/src/Features/Referal/ReferalAllocator.mjs index 4d703788a9..6e37a5c063 100644 --- a/services/web/app/src/Features/Referal/ReferalAllocator.mjs +++ b/services/web/app/src/Features/Referal/ReferalAllocator.mjs @@ -1,6 +1,6 @@ import OError from '@overleaf/o-error' import { User } from '../../models/User.js' -import FeaturesUpdater from '../Subscription/FeaturesUpdater.js' +import FeaturesUpdater from '../Subscription/FeaturesUpdater.mjs' import { callbackify } from '@overleaf/promise-utils' async function allocate(referalId, newUserId, referalSource, referalMedium) { diff --git a/services/web/app/src/Features/Referal/ReferalController.mjs b/services/web/app/src/Features/Referal/ReferalController.mjs index 8315ac756a..29ba70f515 100644 --- a/services/web/app/src/Features/Referal/ReferalController.mjs +++ b/services/web/app/src/Features/Referal/ReferalController.mjs @@ -1,5 +1,5 @@ import ReferalHandler from './ReferalHandler.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' export default { bonus(req, res, next) { diff --git a/services/web/app/src/Features/References/ReferencesController.mjs b/services/web/app/src/Features/References/ReferencesController.mjs index 457c5b70e4..cde778504c 100644 --- a/services/web/app/src/Features/References/ReferencesController.mjs +++ b/services/web/app/src/Features/References/ReferencesController.mjs @@ -1,4 +1,4 @@ -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' export default { indexAll(req, res, next) { diff --git a/services/web/app/src/Features/SamlLog/SamlLogHandler.mjs b/services/web/app/src/Features/SamlLog/SamlLogHandler.mjs index 2fd0038500..37845c6be2 100644 --- a/services/web/app/src/Features/SamlLog/SamlLogHandler.mjs +++ b/services/web/app/src/Features/SamlLog/SamlLogHandler.mjs @@ -1,5 +1,5 @@ import { SamlLog } from '../../models/SamlLog.js' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import logger from '@overleaf/logger' import loggerSerializers from '@overleaf/logger/serializers.js' import { callbackify } from 'node:util' diff --git a/services/web/app/src/Features/Security/RateLimiterMiddleware.mjs b/services/web/app/src/Features/Security/RateLimiterMiddleware.mjs index 3b4555a4e1..c3b4de8bae 100644 --- a/services/web/app/src/Features/Security/RateLimiterMiddleware.mjs +++ b/services/web/app/src/Features/Security/RateLimiterMiddleware.mjs @@ -1,5 +1,5 @@ import logger from '@overleaf/logger' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import LoginRateLimiter from './LoginRateLimiter.js' import settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/ServerAdmin/AdminController.mjs b/services/web/app/src/Features/ServerAdmin/AdminController.mjs index 8fa0119a9a..b2545578c1 100644 --- a/services/web/app/src/Features/ServerAdmin/AdminController.mjs +++ b/services/web/app/src/Features/ServerAdmin/AdminController.mjs @@ -4,7 +4,7 @@ import https from 'node:https' import Settings from '@overleaf/settings' import TpdsUpdateSender from '../ThirdPartyDataStore/TpdsUpdateSender.mjs' import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import SystemMessageManager from '../SystemMessages/SystemMessageManager.mjs' const AdminController = { diff --git a/services/web/app/src/Features/Spelling/SpellingController.mjs b/services/web/app/src/Features/Spelling/SpellingController.mjs index e27c5412bb..1447de1e92 100644 --- a/services/web/app/src/Features/Spelling/SpellingController.mjs +++ b/services/web/app/src/Features/Spelling/SpellingController.mjs @@ -1,6 +1,6 @@ // @ts-check -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import LearnedWordsManager from './LearnedWordsManager.mjs' import { z, validateReq } from '../../infrastructure/Validation.js' diff --git a/services/web/app/src/Features/SplitTests/SlackNotificationManager.mjs b/services/web/app/src/Features/SplitTests/SlackNotificationManager.mjs index 469810bf26..a8e7160f75 100644 --- a/services/web/app/src/Features/SplitTests/SlackNotificationManager.mjs +++ b/services/web/app/src/Features/SplitTests/SlackNotificationManager.mjs @@ -2,7 +2,7 @@ import logger from '@overleaf/logger' import Settings from '@overleaf/settings' import { IncomingWebhook } from '@slack/webhook' import moment from 'moment' -import SplitTestUtils from './SplitTestUtils.js' +import SplitTestUtils from './SplitTestUtils.mjs' async function sendNotification(splitTest, action, user) { const lastVersion = SplitTestUtils.getCurrentVersion(splitTest) diff --git a/services/web/app/src/Features/SplitTests/SplitTestMiddleware.mjs b/services/web/app/src/Features/SplitTests/SplitTestMiddleware.mjs index 3e87b75468..2f62f9dc19 100644 --- a/services/web/app/src/Features/SplitTests/SplitTestMiddleware.mjs +++ b/services/web/app/src/Features/SplitTests/SplitTestMiddleware.mjs @@ -1,4 +1,4 @@ -import SplitTestHandler from './SplitTestHandler.js' +import SplitTestHandler from './SplitTestHandler.mjs' import logger from '@overleaf/logger' import { expressify } from '@overleaf/promise-utils' import Errors from '../Errors/Errors.js' diff --git a/services/web/app/src/Features/StaticPages/HomeController.mjs b/services/web/app/src/Features/StaticPages/HomeController.mjs index 6ae497e240..740e1eb240 100644 --- a/services/web/app/src/Features/StaticPages/HomeController.mjs +++ b/services/web/app/src/Features/StaticPages/HomeController.mjs @@ -1,12 +1,12 @@ import Features from '../../infrastructure/Features.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import Path from 'node:path' import fs from 'node:fs' import ErrorController from '../Errors/ErrorController.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import { expressify } from '@overleaf/promise-utils' import logger from '@overleaf/logger' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' const __dirname = new URL('.', import.meta.url).pathname diff --git a/services/web/app/src/Features/Subscription/LimitationsManager.mjs b/services/web/app/src/Features/Subscription/LimitationsManager.mjs index 8374076d6e..81296d72b8 100644 --- a/services/web/app/src/Features/Subscription/LimitationsManager.mjs +++ b/services/web/app/src/Features/Subscription/LimitationsManager.mjs @@ -3,11 +3,11 @@ import logger from '@overleaf/logger' import ProjectGetter from '../Project/ProjectGetter.mjs' -import UserGetter from '../User/UserGetter.js' -import SubscriptionLocator from './SubscriptionLocator.js' +import UserGetter from '../User/UserGetter.mjs' +import SubscriptionLocator from './SubscriptionLocator.mjs' import Settings from '@overleaf/settings' import CollaboratorsGetter from '../Collaborators/CollaboratorsGetter.mjs' -import CollaboratorsInvitesGetter from '../Collaborators/CollaboratorsInviteGetter.js' +import CollaboratorsInvitesGetter from '../Collaborators/CollaboratorsInviteGetter.mjs' import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' import { callbackify, callbackifyMultiResult } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Subscription/PlansHelper.mjs b/services/web/app/src/Features/Subscription/PlansHelper.mjs index aa23a8d592..79ca9672a3 100644 --- a/services/web/app/src/Features/Subscription/PlansHelper.mjs +++ b/services/web/app/src/Features/Subscription/PlansHelper.mjs @@ -1,5 +1,5 @@ -import FeaturesHelper from './FeaturesHelper.js' -import PlanLocator from './PlansLocator.js' +import FeaturesHelper from './FeaturesHelper.mjs' +import PlanLocator from './PlansLocator.mjs' export function isProfessionalPlan(planCode) { const plan = PlanLocator.findLocalPlanInSettings(planCode) diff --git a/services/web/app/src/Features/Subscription/RecurlyClient.mjs b/services/web/app/src/Features/Subscription/RecurlyClient.mjs index 7849ca01ad..d983fcfa8c 100644 --- a/services/web/app/src/Features/Subscription/RecurlyClient.mjs +++ b/services/web/app/src/Features/Subscription/RecurlyClient.mjs @@ -7,15 +7,7 @@ import logger from '@overleaf/logger' import OError from '@overleaf/o-error' import { callbackify } from 'node:util' import UserGetter from '../User/UserGetter.mjs' -import PaymentProviderEntities from './PaymentProviderEntities.mjs' import { - MissingBillingInfoError, - SubtotalLimitExceededError, -} from './Errors.js' -import RecurlyMetrics from './RecurlyMetrics.mjs' -import { isStandaloneAiAddOnPlanCode, AI_ADD_ON_CODE } from './AiHelper.js' - -const { PaymentProviderSubscription, PaymentProviderSubscriptionAddOn, PaymentProviderSubscriptionChange, @@ -26,11 +18,17 @@ const { PaymentProviderCoupon, PaymentProviderAccount, PaymentProviderImmediateCharge, -} = PaymentProviderEntities +} from './PaymentProviderEntities.mjs' +import { + MissingBillingInfoError, + SubtotalLimitExceededError, +} from './Errors.js' +import RecurlyMetrics from './RecurlyMetrics.mjs' +import { isStandaloneAiAddOnPlanCode, AI_ADD_ON_CODE } from './AiHelper.js' /** - * @import { PaymentProviderSubscriptionChangeRequest } from './PaymentProviderEntities' - * @import { PaymentProviderSubscriptionUpdateRequest } from './PaymentProviderEntities' + * @import { PaymentProviderSubscriptionChangeRequest } from './PaymentProviderEntities.mjs' + * @import { PaymentProviderSubscriptionUpdateRequest } from './PaymentProviderEntities.mjs' * @import { PaymentMethod } from './types' * @import { CurrencyCode } from '../../../../types/subscription/currency' */ diff --git a/services/web/app/src/Features/Subscription/RecurlyEventHandler.mjs b/services/web/app/src/Features/Subscription/RecurlyEventHandler.mjs index 91f61e6d11..ac718fbc4e 100644 --- a/services/web/app/src/Features/Subscription/RecurlyEventHandler.mjs +++ b/services/web/app/src/Features/Subscription/RecurlyEventHandler.mjs @@ -1,5 +1,5 @@ -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import SubscriptionEmailHandler from './SubscriptionEmailHandler.mjs' import { AI_ADD_ON_CODE } from './AiHelper.js' import mongodb from 'mongodb-legacy' diff --git a/services/web/app/src/Features/Subscription/SubscriptionController.mjs b/services/web/app/src/Features/Subscription/SubscriptionController.mjs index 8f2432866e..3459a48575 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionController.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionController.mjs @@ -1,40 +1,40 @@ // @ts-check -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import SubscriptionHandler from './SubscriptionHandler.mjs' import SubscriptionHelper from './SubscriptionHelper.js' import SubscriptionViewModelBuilder from './SubscriptionViewModelBuilder.mjs' import LimitationsManager from './LimitationsManager.mjs' -import RecurlyWrapper from './RecurlyWrapper.js' +import RecurlyWrapper from './RecurlyWrapper.mjs' import Settings from '@overleaf/settings' import logger from '@overleaf/logger' import GeoIpLookup from '../../infrastructure/GeoIpLookup.mjs' -import FeaturesUpdater from './FeaturesUpdater.js' +import FeaturesUpdater from './FeaturesUpdater.mjs' import GroupPlansData from './GroupPlansData.js' -import V1SubscriptionManager from './V1SubscriptionManager.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import V1SubscriptionManager from './V1SubscriptionManager.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import RecurlyEventHandler from './RecurlyEventHandler.mjs' import { expressify } from '@overleaf/promise-utils' import OError from '@overleaf/o-error' import Errors from './Errors.js' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' import AuthorizationManager from '../Authorization/AuthorizationManager.mjs' import Modules from '../../infrastructure/Modules.js' import async from 'async' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' -import RecurlyClient from './RecurlyClient.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' +import RecurlyClient from './RecurlyClient.mjs' import { AI_ADD_ON_CODE, subscriptionChangeIsAiAssistUpgrade, } from './AiHelper.js' -import PlansLocator from './PlansLocator.js' +import PlansLocator from './PlansLocator.mjs' import { User } from '../../models/User.js' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import PermissionsManager from '../Authorization/PermissionsManager.mjs' import { sanitizeSessionUserForFrontEnd } from '../../infrastructure/FrontEndUser.mjs' import { z, validateReq } from '../../infrastructure/Validation.js' import { IndeterminateInvoiceError } from '../Errors/Errors.js' -import SubscriptionLocator from './SubscriptionLocator.js' +import SubscriptionLocator from './SubscriptionLocator.mjs' const { DuplicateAddOnError, @@ -157,7 +157,7 @@ async function checkSubscriptionPauseStatus(user) { /** * @import { SubscriptionChangeDescription } from '../../../../types/subscription/subscription-change-preview' * @import { SubscriptionChangePreview } from '../../../../types/subscription/subscription-change-preview' - * @import { PaymentProviderSubscriptionChange } from './PaymentProviderEntities' + * @import { PaymentProviderSubscriptionChange } from './PaymentProviderEntities.mjs' * @import { PaymentMethod } from './types' */ diff --git a/services/web/app/src/Features/Subscription/SubscriptionEmailBuilder.mjs b/services/web/app/src/Features/Subscription/SubscriptionEmailBuilder.mjs index a07b210a32..9e7552d207 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionEmailBuilder.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionEmailBuilder.mjs @@ -1,4 +1,4 @@ -import EmailBuilder from '../Email/EmailBuilder.js' +import EmailBuilder from '../Email/EmailBuilder.mjs' import EmailMessageHelper from '../Email/EmailMessageHelper.js' import settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/Subscription/SubscriptionEmailHandler.mjs b/services/web/app/src/Features/Subscription/SubscriptionEmailHandler.mjs index 8ccad2dd29..fbd948464c 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionEmailHandler.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionEmailHandler.mjs @@ -1,7 +1,7 @@ -import EmailHandler from '../Email/EmailHandler.js' -import UserGetter from '../User/UserGetter.js' +import EmailHandler from '../Email/EmailHandler.mjs' +import UserGetter from '../User/UserGetter.mjs' import './SubscriptionEmailBuilder.mjs' -import PlansLocator from './PlansLocator.js' +import PlansLocator from './PlansLocator.mjs' import Settings from '@overleaf/settings' const SubscriptionEmailHandler = { diff --git a/services/web/app/src/Features/Subscription/SubscriptionGroupController.mjs b/services/web/app/src/Features/Subscription/SubscriptionGroupController.mjs index 07873d6486..c308be313f 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionGroupController.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionGroupController.mjs @@ -2,12 +2,12 @@ import SubscriptionGroupHandler from './SubscriptionGroupHandler.mjs' import OError from '@overleaf/o-error' import logger from '@overleaf/logger' -import SubscriptionLocator from './SubscriptionLocator.js' -import SessionManager from '../Authentication/SessionManager.js' -import UserAuditLogHandler from '../User/UserAuditLogHandler.js' +import SubscriptionLocator from './SubscriptionLocator.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' +import UserAuditLogHandler from '../User/UserAuditLogHandler.mjs' import { expressify } from '@overleaf/promise-utils' import Modules from '../../infrastructure/Modules.js' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { Subscription } from '../../models/Subscription.js' import { z, validateReq } from '../../infrastructure/Validation.js' import { isProfessionalGroupPlan } from './PlansHelper.mjs' diff --git a/services/web/app/src/Features/Subscription/SubscriptionGroupHandler.mjs b/services/web/app/src/Features/Subscription/SubscriptionGroupHandler.mjs index 063299f46d..3c6e485059 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionGroupHandler.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionGroupHandler.mjs @@ -1,17 +1,17 @@ import { callbackify } from 'node:util' import _ from 'lodash' import OError from '@overleaf/o-error' -import SubscriptionUpdater from './SubscriptionUpdater.js' -import SubscriptionLocator from './SubscriptionLocator.js' +import SubscriptionUpdater from './SubscriptionUpdater.mjs' +import SubscriptionLocator from './SubscriptionLocator.mjs' import SubscriptionController from './SubscriptionController.mjs' import SubscriptionHelper from './SubscriptionHelper.js' import { Subscription } from '../../models/Subscription.js' import { User } from '../../models/User.js' -import PlansLocator from './PlansLocator.js' +import PlansLocator from './PlansLocator.mjs' import TeamInvitesHandler from './TeamInvitesHandler.mjs' import GroupPlansData from './GroupPlansData.js' import Modules from '../../infrastructure/Modules.js' -import PaymentProviderEntities from './PaymentProviderEntities.js' +import PaymentProviderEntities from './PaymentProviderEntities.mjs' import { ManuallyCollectedError, PendingChangeError, diff --git a/services/web/app/src/Features/Subscription/SubscriptionHandler.mjs b/services/web/app/src/Features/Subscription/SubscriptionHandler.mjs index 444ff8b96b..774705654e 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionHandler.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionHandler.mjs @@ -1,22 +1,22 @@ // @ts-check -import RecurlyWrapper from './RecurlyWrapper.js' +import RecurlyWrapper from './RecurlyWrapper.mjs' -import RecurlyClient from './RecurlyClient.js' +import RecurlyClient from './RecurlyClient.mjs' import { User } from '../../models/User.js' import logger from '@overleaf/logger' import SubscriptionHelper from './SubscriptionHelper.js' -import SubscriptionUpdater from './SubscriptionUpdater.js' -import SubscriptionLocator from './SubscriptionLocator.js' +import SubscriptionUpdater from './SubscriptionUpdater.mjs' +import SubscriptionLocator from './SubscriptionLocator.mjs' import LimitationsManager from './LimitationsManager.mjs' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import { callbackify } from '@overleaf/promise-utils' -import UserUpdater from '../User/UserUpdater.js' +import UserUpdater from '../User/UserUpdater.mjs' import { IndeterminateInvoiceError } from '../Errors/Errors.js' import Modules from '../../infrastructure/Modules.js' /** - * @import { PaymentProviderSubscriptionChange } from './PaymentProviderEntities' + * @import { PaymentProviderSubscriptionChange } from './PaymentProviderEntities.mjs' */ async function validateNoSubscriptionInRecurly(userId) { diff --git a/services/web/app/src/Features/Subscription/SubscriptionViewModelBuilder.mjs b/services/web/app/src/Features/Subscription/SubscriptionViewModelBuilder.mjs index 0ab8d7edf2..9fec3a8e5b 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionViewModelBuilder.mjs +++ b/services/web/app/src/Features/Subscription/SubscriptionViewModelBuilder.mjs @@ -1,24 +1,26 @@ // ts-check import Settings from '@overleaf/settings' -import PlansLocator from './PlansLocator.js' +import PlansLocator from './PlansLocator.mjs' import { isStandaloneAiAddOnPlanCode } from './AiHelper.js' -import { MEMBERS_LIMIT_ADD_ON_CODE } from './PaymentProviderEntities.js' +import PaymentProviderEntities from './PaymentProviderEntities.mjs' import SubscriptionFormatters from './SubscriptionFormatters.mjs' -import SubscriptionLocator from './SubscriptionLocator.js' +import SubscriptionLocator from './SubscriptionLocator.mjs' import InstitutionsGetter from '../Institutions/InstitutionsGetter.mjs' import InstitutionsManager from '../Institutions/InstitutionsManager.mjs' -import PublishersGetter from '../Publishers/PublishersGetter.js' +import PublishersGetter from '../Publishers/PublishersGetter.mjs' import sanitizeHtml from 'sanitize-html' import _ from 'lodash' import async from 'async' import SubscriptionHelper from './SubscriptionHelper.js' import { callbackify } from '@overleaf/promise-utils' import { V1ConnectionError } from '../Errors/Errors.js' -import FeaturesHelper from './FeaturesHelper.js' +import FeaturesHelper from './FeaturesHelper.mjs' import { formatCurrency } from '../../util/currency.js' import Modules from '../../infrastructure/Modules.js' -import SplitTestHandler from '../SplitTests/SplitTestHandler.js' +import SplitTestHandler from '../SplitTests/SplitTestHandler.mjs' + +const { MEMBERS_LIMIT_ADD_ON_CODE } = PaymentProviderEntities /** * @import { Subscription } from "../../../../types/project/dashboard/subscription" diff --git a/services/web/app/src/Features/Subscription/TeamInvitesController.mjs b/services/web/app/src/Features/Subscription/TeamInvitesController.mjs index 25cf0f19dc..58c39bda37 100644 --- a/services/web/app/src/Features/Subscription/TeamInvitesController.mjs +++ b/services/web/app/src/Features/Subscription/TeamInvitesController.mjs @@ -2,19 +2,19 @@ import settings from '@overleaf/settings' import logger from '@overleaf/logger' import OError from '@overleaf/o-error' import TeamInvitesHandler from './TeamInvitesHandler.mjs' -import SessionManager from '../Authentication/SessionManager.js' -import SubscriptionLocator from './SubscriptionLocator.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import SubscriptionLocator from './SubscriptionLocator.mjs' import SubscriptionHelper from './SubscriptionHelper.js' import ErrorController from '../Errors/ErrorController.mjs' import EmailHelper from '../Helpers/EmailHelper.js' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { expressify } from '@overleaf/promise-utils' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import PermissionsManager from '../Authorization/PermissionsManager.mjs' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import { RateLimiter } from '../../infrastructure/RateLimiter.js' import Modules from '../../infrastructure/Modules.js' -import UserAuditLogHandler from '../User/UserAuditLogHandler.js' +import UserAuditLogHandler from '../User/UserAuditLogHandler.mjs' import { sanitizeSessionUserForFrontEnd } from '../../infrastructure/FrontEndUser.mjs' const rateLimiters = { diff --git a/services/web/app/src/Features/Subscription/TeamInvitesHandler.mjs b/services/web/app/src/Features/Subscription/TeamInvitesHandler.mjs index 3ff68bb691..79d6aac79a 100644 --- a/services/web/app/src/Features/Subscription/TeamInvitesHandler.mjs +++ b/services/web/app/src/Features/Subscription/TeamInvitesHandler.mjs @@ -5,16 +5,16 @@ import Modules from '../../infrastructure/Modules.js' import mongodb from 'mongodb-legacy' import { Subscription } from '../../models/Subscription.js' import { SSOConfig } from '../../models/SSOConfig.js' -import UserGetter from '../User/UserGetter.js' -import SubscriptionLocator from './SubscriptionLocator.js' -import SubscriptionUpdater from './SubscriptionUpdater.js' +import UserGetter from '../User/UserGetter.mjs' +import SubscriptionLocator from './SubscriptionLocator.mjs' +import SubscriptionUpdater from './SubscriptionUpdater.mjs' import LimitationsManager from './LimitationsManager.mjs' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import EmailHelper from '../Helpers/EmailHelper.js' import Errors from '../Errors/Errors.js' import { callbackify, callbackifyMultiResult } from '@overleaf/promise-utils' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' -import RecurlyClient from './RecurlyClient.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' +import RecurlyClient from './RecurlyClient.mjs' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/Subscription/types.ts b/services/web/app/src/Features/Subscription/types.ts index 59453ac47c..2879e5eefa 100644 --- a/services/web/app/src/Features/Subscription/types.ts +++ b/services/web/app/src/Features/Subscription/types.ts @@ -1,6 +1,6 @@ import { PaypalPaymentMethod, CreditCardPaymentMethod, -} from './PaymentProviderEntities' +} from './PaymentProviderEntities.mjs' export type PaymentMethod = PaypalPaymentMethod | CreditCardPaymentMethod diff --git a/services/web/app/src/Features/Survey/SurveyHandler.mjs b/services/web/app/src/Features/Survey/SurveyHandler.mjs index bcb9c4bee0..c989409afc 100644 --- a/services/web/app/src/Features/Survey/SurveyHandler.mjs +++ b/services/web/app/src/Features/Survey/SurveyHandler.mjs @@ -2,9 +2,9 @@ import crypto from 'node:crypto' import SurveyCache from './SurveyCache.mjs' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' import { callbackify } from '@overleaf/promise-utils' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' /** * @import { Survey } from '../../../../types/project/dashboard/survey' diff --git a/services/web/app/src/Features/SystemMessages/SystemMessageController.mjs b/services/web/app/src/Features/SystemMessages/SystemMessageController.mjs index 790810f706..d43ec47551 100644 --- a/services/web/app/src/Features/SystemMessages/SystemMessageController.mjs +++ b/services/web/app/src/Features/SystemMessages/SystemMessageController.mjs @@ -1,5 +1,5 @@ import Settings from '@overleaf/settings' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import SystemMessageManager from './SystemMessageManager.mjs' const ProjectController = { diff --git a/services/web/app/src/Features/Tags/TagsController.mjs b/services/web/app/src/Features/Tags/TagsController.mjs index a4918cd2cc..c8ac8fca6f 100644 --- a/services/web/app/src/Features/Tags/TagsController.mjs +++ b/services/web/app/src/Features/Tags/TagsController.mjs @@ -1,5 +1,5 @@ -import TagsHandler from './TagsHandler.js' -import SessionManager from '../Authentication/SessionManager.js' +import TagsHandler from './TagsHandler.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import Errors from '../Errors/Errors.js' import { z, validateReq } from '../../infrastructure/Validation.js' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Templates/TemplatesController.mjs b/services/web/app/src/Features/Templates/TemplatesController.mjs index bee842e835..85fb1fb4b3 100644 --- a/services/web/app/src/Features/Templates/TemplatesController.mjs +++ b/services/web/app/src/Features/Templates/TemplatesController.mjs @@ -1,7 +1,7 @@ import path from 'node:path' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import TemplatesManager from './TemplatesManager.mjs' -import ProjectHelper from '../Project/ProjectHelper.js' +import ProjectHelper from '../Project/ProjectHelper.mjs' import logger from '@overleaf/logger' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Templates/TemplatesManager.mjs b/services/web/app/src/Features/Templates/TemplatesManager.mjs index 698739b62b..b083cd77c7 100644 --- a/services/web/app/src/Features/Templates/TemplatesManager.mjs +++ b/services/web/app/src/Features/Templates/TemplatesManager.mjs @@ -1,6 +1,6 @@ import { Project } from '../../models/Project.js' import ProjectDetailsHandler from '../Project/ProjectDetailsHandler.mjs' -import ProjectOptionsHandlerModule from '../Project/ProjectOptionsHandler.js' +import ProjectOptionsHandlerModule from '../Project/ProjectOptionsHandler.mjs' import ProjectRootDocManagerModule from '../Project/ProjectRootDocManager.mjs' import ProjectUploadManager from '../Uploads/ProjectUploadManager.mjs' import fs from 'node:fs' diff --git a/services/web/app/src/Features/ThirdPartyDataStore/TpdsController.mjs b/services/web/app/src/Features/ThirdPartyDataStore/TpdsController.mjs index ed0aaf53d3..018b682655 100644 --- a/services/web/app/src/Features/ThirdPartyDataStore/TpdsController.mjs +++ b/services/web/app/src/Features/ThirdPartyDataStore/TpdsController.mjs @@ -5,11 +5,11 @@ import Errors from '../Errors/Errors.js' import logger from '@overleaf/logger' import Path from 'node:path' import metrics from '@overleaf/metrics' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' -import SessionManager from '../Authentication/SessionManager.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import ProjectCreationHandler from '../Project/ProjectCreationHandler.mjs' import ProjectDetailsHandler from '../Project/ProjectDetailsHandler.mjs' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import TpdsQueueManager from './TpdsQueueManager.mjs' async function createProject(req, res) { diff --git a/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateHandler.mjs b/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateHandler.mjs index bfdb3f2d70..85842195d9 100644 --- a/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateHandler.mjs +++ b/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateHandler.mjs @@ -1,13 +1,13 @@ import { callbackify } from 'node:util' import UpdateMerger from './UpdateMerger.mjs' import logger from '@overleaf/logger' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' import ProjectCreationHandler from '../Project/ProjectCreationHandler.mjs' import ProjectDeleter from '../Project/ProjectDeleter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import ProjectHelper from '../Project/ProjectHelper.js' +import ProjectHelper from '../Project/ProjectHelper.mjs' import ProjectRootDocManager from '../Project/ProjectRootDocManager.mjs' -import FileTypeManager from '../Uploads/FileTypeManager.js' +import FileTypeManager from '../Uploads/FileTypeManager.mjs' import CooldownManager from '../Cooldown/CooldownManager.js' import Errors from '../Errors/Errors.js' import Modules from '../../infrastructure/Modules.js' diff --git a/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateSender.mjs b/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateSender.mjs index a0f6bcfdd4..9b0413bfe6 100644 --- a/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateSender.mjs +++ b/services/web/app/src/Features/ThirdPartyDataStore/TpdsUpdateSender.mjs @@ -7,7 +7,7 @@ import Path from 'node:path' import { fetchNothing } from '@overleaf/fetch-utils' import settings from '@overleaf/settings' import CollaboratorsGetterModule from '../Collaborators/CollaboratorsGetter.mjs' -import UserGetterModule from '../User/UserGetter.js' +import UserGetterModule from '../User/UserGetter.mjs' const { promises: UserGetter } = UserGetterModule const { promises: CollaboratorsGetter } = CollaboratorsGetterModule diff --git a/services/web/app/src/Features/ThirdPartyDataStore/UpdateMerger.mjs b/services/web/app/src/Features/ThirdPartyDataStore/UpdateMerger.mjs index 17e760c356..cd9514036e 100644 --- a/services/web/app/src/Features/ThirdPartyDataStore/UpdateMerger.mjs +++ b/services/web/app/src/Features/ThirdPartyDataStore/UpdateMerger.mjs @@ -4,7 +4,7 @@ import fsPromises from 'node:fs/promises' import fs from 'node:fs' import logger from '@overleaf/logger' import EditorController from '../Editor/EditorController.mjs' -import FileTypeManager from '../Uploads/FileTypeManager.js' +import FileTypeManager from '../Uploads/FileTypeManager.mjs' import ProjectEntityHandler from '../Project/ProjectEntityHandler.mjs' import crypto from 'node:crypto' import Settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/TokenAccess/TokenAccessController.mjs b/services/web/app/src/Features/TokenAccess/TokenAccessController.mjs index 3ecb0d960d..608b567f3d 100644 --- a/services/web/app/src/Features/TokenAccess/TokenAccessController.mjs +++ b/services/web/app/src/Features/TokenAccess/TokenAccessController.mjs @@ -1,6 +1,6 @@ import AuthenticationController from '../Authentication/AuthenticationController.mjs' -import SessionManager from '../Authentication/SessionManager.js' -import TokenAccessHandler from './TokenAccessHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import TokenAccessHandler from './TokenAccessHandler.mjs' import Errors from '../Errors/Errors.js' import logger from '@overleaf/logger' import OError from '@overleaf/o-error' @@ -10,17 +10,18 @@ import PrivilegeLevels from '../Authorization/PrivilegeLevels.js' import ProjectAuditLogHandler from '../Project/ProjectAuditLogHandler.mjs' import CollaboratorsInviteHandler from '../Collaborators/CollaboratorsInviteHandler.mjs' import CollaboratorsHandler from '../Collaborators/CollaboratorsHandler.mjs' -import EditorRealTimeController from '../Editor/EditorRealTimeController.js' +import EditorRealTimeController from '../Editor/EditorRealTimeController.mjs' import CollaboratorsGetter from '../Collaborators/CollaboratorsGetter.mjs' import ProjectGetter from '../Project/ProjectGetter.mjs' -import AsyncFormHelper from '../Helpers/AsyncFormHelper.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AsyncFormHelper from '../Helpers/AsyncFormHelper.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' -import { getSafeAdminDomainRedirect } from '../Helpers/UrlHelper.js' -import UserGetter from '../User/UserGetter.js' +import UrlHelper from '../Helpers/UrlHelper.mjs' +import UserGetter from '../User/UserGetter.mjs' import Settings from '@overleaf/settings' import LimitationsManager from '../Subscription/LimitationsManager.mjs' +const { getSafeAdminDomainRedirect } = UrlHelper const { canRedirectToAdminDomain } = AdminAuthorizationHelper const orderedPrivilegeLevels = [ PrivilegeLevels.NONE, diff --git a/services/web/app/src/Features/Tutorial/TutorialController.mjs b/services/web/app/src/Features/Tutorial/TutorialController.mjs index 3b5619bbb1..3de1706047 100644 --- a/services/web/app/src/Features/Tutorial/TutorialController.mjs +++ b/services/web/app/src/Features/Tutorial/TutorialController.mjs @@ -1,4 +1,4 @@ -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import TutorialHandler from './TutorialHandler.mjs' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/Tutorial/TutorialHandler.mjs b/services/web/app/src/Features/Tutorial/TutorialHandler.mjs index fe54943b5c..ca92cb44c6 100644 --- a/services/web/app/src/Features/Tutorial/TutorialHandler.mjs +++ b/services/web/app/src/Features/Tutorial/TutorialHandler.mjs @@ -1,4 +1,4 @@ -import UserUpdater from '../User/UserUpdater.js' +import UserUpdater from '../User/UserUpdater.mjs' const POSTPONE_DURATION_MS = 24 * 60 * 60 * 1000 // 1 day diff --git a/services/web/app/src/Features/Uploads/FileSystemImportManager.mjs b/services/web/app/src/Features/Uploads/FileSystemImportManager.mjs index 16e7533f42..67fb09a135 100644 --- a/services/web/app/src/Features/Uploads/FileSystemImportManager.mjs +++ b/services/web/app/src/Features/Uploads/FileSystemImportManager.mjs @@ -3,8 +3,8 @@ import Path from 'node:path' import { callbackify } from 'node:util' import EditorController from '../Editor/EditorController.mjs' import Errors from '../Errors/Errors.js' -import FileTypeManager from './FileTypeManager.js' -import SafePath from '../Project/SafePath.js' +import FileTypeManager from './FileTypeManager.mjs' +import SafePath from '../Project/SafePath.mjs' import logger from '@overleaf/logger' export default { diff --git a/services/web/app/src/Features/Uploads/ProjectUploadController.mjs b/services/web/app/src/Features/Uploads/ProjectUploadController.mjs index c414a3f516..e88b9944d5 100644 --- a/services/web/app/src/Features/Uploads/ProjectUploadController.mjs +++ b/services/web/app/src/Features/Uploads/ProjectUploadController.mjs @@ -4,7 +4,7 @@ import fs from 'node:fs' import Path from 'node:path' import FileSystemImportManager from './FileSystemImportManager.mjs' import ProjectUploadManager from './ProjectUploadManager.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import EditorController from '../Editor/EditorController.mjs' import ProjectLocator from '../Project/ProjectLocator.mjs' import Settings from '@overleaf/settings' diff --git a/services/web/app/src/Features/Uploads/ProjectUploadManager.mjs b/services/web/app/src/Features/Uploads/ProjectUploadManager.mjs index c92488d32d..4e658903d6 100644 --- a/services/web/app/src/Features/Uploads/ProjectUploadManager.mjs +++ b/services/web/app/src/Features/Uploads/ProjectUploadManager.mjs @@ -1,10 +1,10 @@ import Path from 'node:path' import fs from 'node:fs' import { callbackify } from 'node:util' -import ArchiveManager from './ArchiveManager.js' +import ArchiveManager from './ArchiveManager.mjs' import { Doc } from '../../models/Doc.js' -import DocstoreManager from '../Docstore/DocstoreManager.js' -import DocumentHelper from '../Documents/DocumentHelper.js' +import DocstoreManager from '../Docstore/DocstoreManager.mjs' +import DocumentHelper from '../Documents/DocumentHelper.mjs' import DocumentUpdaterHandler from '../DocumentUpdater/DocumentUpdaterHandler.mjs' import FileStoreHandler from '../FileStore/FileStoreHandler.mjs' import FileSystemImportManager from './FileSystemImportManager.mjs' diff --git a/services/web/app/src/Features/User/SAMLIdentityManager.mjs b/services/web/app/src/Features/User/SAMLIdentityManager.mjs index e6eb8a03dd..3d8e84a467 100644 --- a/services/web/app/src/Features/User/SAMLIdentityManager.mjs +++ b/services/web/app/src/Features/User/SAMLIdentityManager.mjs @@ -1,13 +1,13 @@ import mongodb from 'mongodb-legacy' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import Errors from '../Errors/Errors.js' -import InstitutionsAPI from '../Institutions/InstitutionsAPI.js' -import NotificationsBuilder from '../Notifications/NotificationsBuilder.js' +import InstitutionsAPI from '../Institutions/InstitutionsAPI.mjs' +import NotificationsBuilder from '../Notifications/NotificationsBuilder.mjs' import OError from '@overleaf/o-error' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' -import UserAuditLogHandler from '../User/UserAuditLogHandler.js' -import UserGetter from '../User/UserGetter.js' -import UserUpdater from '../User/UserUpdater.js' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' +import UserAuditLogHandler from '../User/UserAuditLogHandler.mjs' +import UserGetter from '../User/UserGetter.mjs' +import UserUpdater from '../User/UserUpdater.mjs' import logger from '@overleaf/logger' import { User } from '../../models/User.js' import { promiseMapWithLimit } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/User/UserController.mjs b/services/web/app/src/Features/User/UserController.mjs index 46f187e4ed..a66fedbbb7 100644 --- a/services/web/app/src/Features/User/UserController.mjs +++ b/services/web/app/src/Features/User/UserController.mjs @@ -1,22 +1,22 @@ import UserHandler from './UserHandler.mjs' import UserDeleter from './UserDeleter.mjs' -import UserGetter from './UserGetter.js' +import UserGetter from './UserGetter.mjs' import { User } from '../../models/User.js' -import NewsletterManager from '../Newsletter/NewsletterManager.js' +import NewsletterManager from '../Newsletter/NewsletterManager.mjs' import logger from '@overleaf/logger' import metrics from '@overleaf/metrics' -import AuthenticationManager from '../Authentication/AuthenticationManager.js' -import SessionManager from '../Authentication/SessionManager.js' +import AuthenticationManager from '../Authentication/AuthenticationManager.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import Features from '../../infrastructure/Features.js' import { z, validateReq } from '../../infrastructure/Validation.js' -import UserAuditLogHandler from './UserAuditLogHandler.js' -import UserSessionsManager from './UserSessionsManager.js' -import UserUpdater from './UserUpdater.js' +import UserAuditLogHandler from './UserAuditLogHandler.mjs' +import UserSessionsManager from './UserSessionsManager.mjs' +import UserUpdater from './UserUpdater.mjs' import Errors from '../Errors/Errors.js' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import OError from '@overleaf/o-error' -import EmailHandler from '../Email/EmailHandler.js' -import UrlHelper from '../Helpers/UrlHelper.js' +import EmailHandler from '../Email/EmailHandler.mjs' +import UrlHelper from '../Helpers/UrlHelper.mjs' import { promisify } from 'node:util' import { expressify } from '@overleaf/promise-utils' import { acceptsJson } from '../../infrastructure/RequestContentTypeDetection.js' diff --git a/services/web/app/src/Features/User/UserCreator.mjs b/services/web/app/src/Features/User/UserCreator.mjs index 62590e73a3..a5604f1f52 100644 --- a/services/web/app/src/Features/User/UserCreator.mjs +++ b/services/web/app/src/Features/User/UserCreator.mjs @@ -4,9 +4,9 @@ import { AffiliationError } from '../Errors/Errors.js' import Features from '../../infrastructure/Features.js' import { User } from '../../models/User.js' import UserDeleter from './UserDeleter.mjs' -import UserGetter from './UserGetter.js' -import UserUpdater from './UserUpdater.js' -import Analytics from '../Analytics/AnalyticsManager.js' +import UserGetter from './UserGetter.mjs' +import UserUpdater from './UserUpdater.mjs' +import Analytics from '../Analytics/AnalyticsManager.mjs' import UserOnboardingEmailManager from './UserOnboardingEmailManager.mjs' import UserPostRegistrationAnalyticsManager from './UserPostRegistrationAnalyticsManager.mjs' import OError from '@overleaf/o-error' diff --git a/services/web/app/src/Features/User/UserDeleter.mjs b/services/web/app/src/Features/User/UserDeleter.mjs index d3f35573be..d3657a8696 100644 --- a/services/web/app/src/Features/User/UserDeleter.mjs +++ b/services/web/app/src/Features/User/UserDeleter.mjs @@ -5,19 +5,19 @@ import { User } from '../../models/User.js' import { DeletedUser } from '../../models/DeletedUser.js' import { UserAuditLogEntry } from '../../models/UserAuditLogEntry.js' import { Feedback } from '../../models/Feedback.js' -import NewsletterManager from '../Newsletter/NewsletterManager.js' +import NewsletterManager from '../Newsletter/NewsletterManager.mjs' import ProjectDeleter from '../Project/ProjectDeleter.mjs' import SubscriptionHandler from '../Subscription/SubscriptionHandler.mjs' -import SubscriptionUpdater from '../Subscription/SubscriptionUpdater.js' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' -import UserMembershipsHandler from '../UserMembership/UserMembershipsHandler.js' -import UserSessionsManager from './UserSessionsManager.js' -import UserAuditLogHandler from './UserAuditLogHandler.js' -import InstitutionsAPI from '../Institutions/InstitutionsAPI.js' +import SubscriptionUpdater from '../Subscription/SubscriptionUpdater.mjs' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' +import UserMembershipsHandler from '../UserMembership/UserMembershipsHandler.mjs' +import UserSessionsManager from './UserSessionsManager.mjs' +import UserAuditLogHandler from './UserAuditLogHandler.mjs' +import InstitutionsAPI from '../Institutions/InstitutionsAPI.mjs' import Modules from '../../infrastructure/Modules.js' import Errors from '../Errors/Errors.js' -import OnboardingDataCollectionManager from '../OnboardingDataCollection/OnboardingDataCollectionManager.js' -import EmailHandler from '../Email/EmailHandler.js' +import OnboardingDataCollectionManager from '../OnboardingDataCollection/OnboardingDataCollectionManager.mjs' +import EmailHandler from '../Email/EmailHandler.mjs' export default { deleteUser: callbackify(deleteUser), diff --git a/services/web/app/src/Features/User/UserEmailsConfirmationHandler.mjs b/services/web/app/src/Features/User/UserEmailsConfirmationHandler.mjs index 82fe4a79c2..e85cca3a80 100644 --- a/services/web/app/src/Features/User/UserEmailsConfirmationHandler.mjs +++ b/services/web/app/src/Features/User/UserEmailsConfirmationHandler.mjs @@ -1,13 +1,13 @@ import EmailHelper from '../Helpers/EmailHelper.js' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import OneTimeTokenHandler from '../Security/OneTimeTokenHandler.js' import settings from '@overleaf/settings' import Errors from '../Errors/Errors.js' -import UserUpdater from './UserUpdater.js' -import UserGetter from './UserGetter.js' +import UserUpdater from './UserUpdater.mjs' +import UserGetter from './UserGetter.mjs' import { callbackify } from 'node:util' import crypto from 'node:crypto' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' // Reject email confirmation tokens after 90 days const TOKEN_EXPIRY_IN_S = 90 * 24 * 60 * 60 diff --git a/services/web/app/src/Features/User/UserEmailsController.mjs b/services/web/app/src/Features/User/UserEmailsController.mjs index b0ee1d3e92..c63ce4cdd3 100644 --- a/services/web/app/src/Features/User/UserEmailsController.mjs +++ b/services/web/app/src/Features/User/UserEmailsController.mjs @@ -1,21 +1,21 @@ import AuthenticationController from '../Authentication/AuthenticationController.mjs' import Settings from '@overleaf/settings' import logger from '@overleaf/logger' -import SessionManager from '../Authentication/SessionManager.js' -import UserGetter from './UserGetter.js' -import UserUpdater from './UserUpdater.js' -import UserSessionsManager from './UserSessionsManager.js' -import EmailHandler from '../Email/EmailHandler.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import UserGetter from './UserGetter.mjs' +import UserUpdater from './UserUpdater.mjs' +import UserSessionsManager from './UserSessionsManager.mjs' +import EmailHandler from '../Email/EmailHandler.mjs' import EmailHelper from '../Helpers/EmailHelper.js' import UserEmailsConfirmationHandler from './UserEmailsConfirmationHandler.mjs' -import InstitutionsAPI from '../Institutions/InstitutionsAPI.js' +import InstitutionsAPI from '../Institutions/InstitutionsAPI.mjs' import Errors from '../Errors/Errors.js' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import { expressify } from '@overleaf/promise-utils' -import AsyncFormHelper from '../Helpers/AsyncFormHelper.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import AsyncFormHelper from '../Helpers/AsyncFormHelper.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' import UserPrimaryEmailCheckHandler from '../User/UserPrimaryEmailCheckHandler.mjs' -import UserAuditLogHandler from './UserAuditLogHandler.js' +import UserAuditLogHandler from './UserAuditLogHandler.mjs' import { RateLimiter } from '../../infrastructure/RateLimiter.js' import Features from '../../infrastructure/Features.js' import tsscmp from 'tsscmp' diff --git a/services/web/app/src/Features/User/UserInfoController.mjs b/services/web/app/src/Features/User/UserInfoController.mjs index 1aaa1dbeb3..1e2b7e7d65 100644 --- a/services/web/app/src/Features/User/UserInfoController.mjs +++ b/services/web/app/src/Features/User/UserInfoController.mjs @@ -1,5 +1,5 @@ -import UserGetter from './UserGetter.js' -import SessionManager from '../Authentication/SessionManager.js' +import UserGetter from './UserGetter.mjs' +import SessionManager from '../Authentication/SessionManager.mjs' import mongodb from 'mongodb-legacy' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/app/src/Features/User/UserInfoManager.mjs b/services/web/app/src/Features/User/UserInfoManager.mjs index 5023aa40c4..40b5fd0532 100644 --- a/services/web/app/src/Features/User/UserInfoManager.mjs +++ b/services/web/app/src/Features/User/UserInfoManager.mjs @@ -1,4 +1,4 @@ -import UserGetter from './UserGetter.js' +import UserGetter from './UserGetter.mjs' import { callbackify } from '@overleaf/promise-utils' async function getPersonalInfo(userId) { diff --git a/services/web/app/src/Features/User/UserOnboardingEmailManager.mjs b/services/web/app/src/Features/User/UserOnboardingEmailManager.mjs index 3b260f4994..b29bbd2d96 100644 --- a/services/web/app/src/Features/User/UserOnboardingEmailManager.mjs +++ b/services/web/app/src/Features/User/UserOnboardingEmailManager.mjs @@ -1,7 +1,7 @@ import Queues from '../../infrastructure/Queues.js' -import EmailHandler from '../Email/EmailHandler.js' -import UserUpdater from './UserUpdater.js' -import UserGetter from './UserGetter.js' +import EmailHandler from '../Email/EmailHandler.mjs' +import UserUpdater from './UserUpdater.mjs' +import UserGetter from './UserGetter.mjs' import Settings from '@overleaf/settings' const ONE_DAY_MS = 24 * 60 * 60 * 1000 diff --git a/services/web/app/src/Features/User/UserPagesController.mjs b/services/web/app/src/Features/User/UserPagesController.mjs index a85521fa10..d2e669a733 100644 --- a/services/web/app/src/Features/User/UserPagesController.mjs +++ b/services/web/app/src/Features/User/UserPagesController.mjs @@ -1,12 +1,12 @@ -import UserGetter from './UserGetter.js' +import UserGetter from './UserGetter.mjs' import OError from '@overleaf/o-error' -import UserSessionsManager from './UserSessionsManager.js' +import UserSessionsManager from './UserSessionsManager.mjs' import logger from '@overleaf/logger' import Settings from '@overleaf/settings' import AuthenticationController from '../Authentication/AuthenticationController.mjs' -import SessionManager from '../Authentication/SessionManager.js' -import NewsletterManager from '../Newsletter/NewsletterManager.js' -import SubscriptionLocator from '../Subscription/SubscriptionLocator.js' +import SessionManager from '../Authentication/SessionManager.mjs' +import NewsletterManager from '../Newsletter/NewsletterManager.mjs' +import SubscriptionLocator from '../Subscription/SubscriptionLocator.mjs' import _ from 'lodash' import { expressify } from '@overleaf/promise-utils' import Features from '../../infrastructure/Features.js' diff --git a/services/web/app/src/Features/User/UserPostRegistrationAnalyticsManager.mjs b/services/web/app/src/Features/User/UserPostRegistrationAnalyticsManager.mjs index 67c08e33e3..a21b929bd2 100644 --- a/services/web/app/src/Features/User/UserPostRegistrationAnalyticsManager.mjs +++ b/services/web/app/src/Features/User/UserPostRegistrationAnalyticsManager.mjs @@ -1,7 +1,7 @@ import Queues from '../../infrastructure/Queues.js' -import UserGetter from './UserGetter.js' -import InstitutionsAPI from '../Institutions/InstitutionsAPI.js' -import AnalyticsManager from '../Analytics/AnalyticsManager.js' +import UserGetter from './UserGetter.mjs' +import InstitutionsAPI from '../Institutions/InstitutionsAPI.mjs' +import AnalyticsManager from '../Analytics/AnalyticsManager.mjs' const ONE_DAY_MS = 24 * 60 * 60 * 1000 diff --git a/services/web/app/src/Features/User/UserRegistrationHandler.mjs b/services/web/app/src/Features/User/UserRegistrationHandler.mjs index c30c716924..d01be0acf7 100644 --- a/services/web/app/src/Features/User/UserRegistrationHandler.mjs +++ b/services/web/app/src/Features/User/UserRegistrationHandler.mjs @@ -1,11 +1,11 @@ import { User } from '../../models/User.js' import UserCreator from './UserCreator.mjs' -import UserGetter from './UserGetter.js' -import AuthenticationManager from '../Authentication/AuthenticationManager.js' -import NewsletterManager from '../Newsletter/NewsletterManager.js' +import UserGetter from './UserGetter.mjs' +import AuthenticationManager from '../Authentication/AuthenticationManager.mjs' +import NewsletterManager from '../Newsletter/NewsletterManager.mjs' import logger from '@overleaf/logger' import crypto from 'node:crypto' -import EmailHandler from '../Email/EmailHandler.js' +import EmailHandler from '../Email/EmailHandler.mjs' import OneTimeTokenHandler from '../Security/OneTimeTokenHandler.js' import settings from '@overleaf/settings' import EmailHelper from '../Helpers/EmailHelper.js' diff --git a/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.mjs b/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.mjs index 0b26c597ce..e89d0b6946 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.mjs +++ b/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.mjs @@ -1,5 +1,5 @@ import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import Settings from '@overleaf/settings' const { hasAdminCapability, hasAdminAccess } = AdminAuthorizationHelper diff --git a/services/web/app/src/Features/UserMembership/UserMembershipController.mjs b/services/web/app/src/Features/UserMembership/UserMembershipController.mjs index 3091e44d9e..257dd8ae2c 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipController.mjs +++ b/services/web/app/src/Features/UserMembership/UserMembershipController.mjs @@ -1,4 +1,4 @@ -import SessionManager from '../Authentication/SessionManager.js' +import SessionManager from '../Authentication/SessionManager.mjs' import UserMembershipHandler from './UserMembershipHandler.mjs' import Errors from '../Errors/Errors.js' import EmailHelper from '../Helpers/EmailHelper.js' @@ -7,8 +7,8 @@ import UserMembershipErrors from './UserMembershipErrors.mjs' import { SSOConfig } from '../../models/SSOConfig.js' import { Parser as CSVParser } from 'json2csv' import { expressify } from '@overleaf/promise-utils' -import PlansLocator from '../Subscription/PlansLocator.js' -import RecurlyClient from '../Subscription/RecurlyClient.js' +import PlansLocator from '../Subscription/PlansLocator.mjs' +import RecurlyClient from '../Subscription/RecurlyClient.mjs' import Modules from '../../infrastructure/Modules.js' import UserMembershipAuthorization from './UserMembershipAuthorization.mjs' diff --git a/services/web/app/src/Features/UserMembership/UserMembershipHandler.mjs b/services/web/app/src/Features/UserMembership/UserMembershipHandler.mjs index ed7b5d4cc8..6e170f3e6b 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipHandler.mjs +++ b/services/web/app/src/Features/UserMembership/UserMembershipHandler.mjs @@ -4,7 +4,7 @@ import { Institution } from '../../models/Institution.js' import { Subscription } from '../../models/Subscription.js' import { Publisher } from '../../models/Publisher.js' import UserMembershipViewModel from './UserMembershipViewModel.mjs' -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import UserMembershipErrors from './UserMembershipErrors.mjs' const { ObjectId } = mongodb diff --git a/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.mjs b/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.mjs index fd292f1acc..1eac2e6c1d 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.mjs +++ b/services/web/app/src/Features/UserMembership/UserMembershipMiddleware.mjs @@ -6,9 +6,9 @@ import async from 'async' import UserMembershipAuthorization from './UserMembershipAuthorization.mjs' import AuthenticationController from '../Authentication/AuthenticationController.mjs' import UserMembershipHandler from './UserMembershipHandler.mjs' -import EntityConfigs from './UserMembershipEntityConfigs.js' +import EntityConfigs from './UserMembershipEntityConfigs.mjs' import Errors from '../Errors/Errors.js' -import HttpErrorHandler from '../Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Errors/HttpErrorHandler.mjs' import TemplatesManager from '../Templates/TemplatesManager.mjs' import { z, zz, validateReq } from '../../infrastructure/Validation.js' import AdminAuthorizationHelper from '../Helpers/AdminAuthorizationHelper.mjs' diff --git a/services/web/app/src/Features/UserMembership/UserMembershipViewModel.mjs b/services/web/app/src/Features/UserMembership/UserMembershipViewModel.mjs index e14d6ff705..5a34288ce1 100644 --- a/services/web/app/src/Features/UserMembership/UserMembershipViewModel.mjs +++ b/services/web/app/src/Features/UserMembership/UserMembershipViewModel.mjs @@ -1,4 +1,4 @@ -import UserGetter from '../User/UserGetter.js' +import UserGetter from '../User/UserGetter.mjs' import { isObjectIdInstance } from '../Helpers/Mongo.js' const UserMembershipViewModel = { diff --git a/services/web/app/src/infrastructure/BodyParserWrapper.mjs b/services/web/app/src/infrastructure/BodyParserWrapper.mjs index b141a8bd4b..d6cc53f45c 100644 --- a/services/web/app/src/infrastructure/BodyParserWrapper.mjs +++ b/services/web/app/src/infrastructure/BodyParserWrapper.mjs @@ -1,5 +1,5 @@ import bodyParser from 'body-parser' -import HttpErrorHandler from '../Features/Errors/HttpErrorHandler.js' +import HttpErrorHandler from '../Features/Errors/HttpErrorHandler.mjs' function isBodyParserError(nextArg) { if (nextArg instanceof Error) { diff --git a/services/web/app/src/infrastructure/CustomSessionStore.mjs b/services/web/app/src/infrastructure/CustomSessionStore.mjs index f86c933710..39da5fa09d 100644 --- a/services/web/app/src/infrastructure/CustomSessionStore.mjs +++ b/services/web/app/src/infrastructure/CustomSessionStore.mjs @@ -2,7 +2,7 @@ import session from 'express-session' import RedisStoreFactory from 'connect-redis' import logger from '@overleaf/logger' import Settings from '@overleaf/settings' -import SessionManager from '../Features/Authentication/SessionManager.js' +import SessionManager from '../Features/Authentication/SessionManager.mjs' import Metrics from '@overleaf/metrics' const RedisStore = RedisStoreFactory(session) diff --git a/services/web/app/src/infrastructure/ExpressLocals.mjs b/services/web/app/src/infrastructure/ExpressLocals.mjs index b601a6fc20..a509067c22 100644 --- a/services/web/app/src/infrastructure/ExpressLocals.mjs +++ b/services/web/app/src/infrastructure/ExpressLocals.mjs @@ -8,7 +8,7 @@ import moment from 'moment' import { fetchJson } from '@overleaf/fetch-utils' import contentDisposition from 'content-disposition' import Features from './Features.js' -import SessionManager from '../Features/Authentication/SessionManager.js' +import SessionManager from '../Features/Authentication/SessionManager.mjs' import PackageVersions from './PackageVersions.js' import Modules from './Modules.js' import Errors from '../Features/Errors/Errors.js' @@ -262,7 +262,7 @@ export default async function (webRouter, privateApiRouter, publicApiRouter) { webRouter.use( expressify(async function (req, res, next) { res.locals.StringHelper = ( - await import('../Features/Helpers/StringHelper.js') + await import('../Features/Helpers/StringHelper.mjs') ).default next() }) diff --git a/services/web/app/src/infrastructure/QueueWorkers.mjs b/services/web/app/src/infrastructure/QueueWorkers.mjs index 5f6292f698..f3ce98f80b 100644 --- a/services/web/app/src/infrastructure/QueueWorkers.mjs +++ b/services/web/app/src/infrastructure/QueueWorkers.mjs @@ -2,14 +2,14 @@ import Features from './Features.js' import Queues from './Queues.js' import UserOnboardingEmailManager from '../Features/User/UserOnboardingEmailManager.mjs' import UserPostRegistrationAnalyticsManager from '../Features/User/UserPostRegistrationAnalyticsManager.mjs' -import FeaturesUpdater from '../Features/Subscription/FeaturesUpdater.js' +import FeaturesUpdater from '../Features/Subscription/FeaturesUpdater.mjs' import { addOptionalCleanupHandlerBeforeStoppingTraffic, addRequiredCleanupHandlerBeforeDrainingConnections, } from './GracefulShutdown.js' -import EmailHandler from '../Features/Email/EmailHandler.js' +import EmailHandler from '../Features/Email/EmailHandler.mjs' import logger from '@overleaf/logger' import OError from '@overleaf/o-error' import Modules from './Modules.js' diff --git a/services/web/app/src/infrastructure/Server.mjs b/services/web/app/src/infrastructure/Server.mjs index f3cda6b84c..c95b3dabff 100644 --- a/services/web/app/src/infrastructure/Server.mjs +++ b/services/web/app/src/infrastructure/Server.mjs @@ -5,11 +5,11 @@ import metrics from '@overleaf/metrics' import csp, { removeCSPHeaders } from './CSP.mjs' import Router from '../router.mjs' import helmet from 'helmet' -import UserSessionsRedis from '../Features/User/UserSessionsRedis.js' +import UserSessionsRedis from '../Features/User/UserSessionsRedis.mjs' import Csrf from './Csrf.mjs' import HttpPermissionsPolicyMiddleware from './HttpPermissionsPolicy.js' import SessionAutostartMiddleware from './SessionAutostartMiddleware.mjs' -import AnalyticsManager from '../Features/Analytics/AnalyticsManager.js' +import AnalyticsManager from '../Features/Analytics/AnalyticsManager.mjs' import session from 'express-session' import CookieMetrics from './CookieMetrics.mjs' import CustomSessionStore from './CustomSessionStore.mjs' @@ -25,10 +25,10 @@ import translations from './Translations.mjs' import Views from './Views.js' import Features from './Features.js' import ErrorController from '../Features/Errors/ErrorController.mjs' -import HttpErrorHandler from '../Features/Errors/HttpErrorHandler.js' -import UserSessionsManager from '../Features/User/UserSessionsManager.js' +import HttpErrorHandler from '../Features/Errors/HttpErrorHandler.mjs' +import UserSessionsManager from '../Features/User/UserSessionsManager.mjs' import AuthenticationController from '../Features/Authentication/AuthenticationController.mjs' -import SessionManager from '../Features/Authentication/SessionManager.js' +import SessionManager from '../Features/Authentication/SessionManager.mjs' import AdminAuthorizationHelper from '../Features/Helpers/AdminAuthorizationHelper.mjs' import Modules from './Modules.js' import expressLocals from './ExpressLocals.mjs' diff --git a/services/web/app/src/infrastructure/Translations.mjs b/services/web/app/src/infrastructure/Translations.mjs index ed9067a6e8..aca7bd299e 100644 --- a/services/web/app/src/infrastructure/Translations.mjs +++ b/services/web/app/src/infrastructure/Translations.mjs @@ -6,7 +6,7 @@ import Settings from '@overleaf/settings' import { URL } from 'node:url' import pug from 'pug-runtime' import logger from '@overleaf/logger' -import SafeHTMLSubstitution from '../Features/Helpers/SafeHTMLSubstitution.js' +import SafeHTMLSubstitution from '../Features/Helpers/SafeHTMLSubstitution.mjs' const fallbackLanguageCode = Settings.i18n.defaultLng || 'en' const availableLanguageCodes = [] diff --git a/services/web/app/src/infrastructure/UnsupportedBrowserMiddleware.mjs b/services/web/app/src/infrastructure/UnsupportedBrowserMiddleware.mjs index 2151e64cd0..58c9be5178 100644 --- a/services/web/app/src/infrastructure/UnsupportedBrowserMiddleware.mjs +++ b/services/web/app/src/infrastructure/UnsupportedBrowserMiddleware.mjs @@ -1,7 +1,9 @@ import Bowser from 'bowser' import Settings from '@overleaf/settings' import Url from 'node:url' -import { getSafeRedirectPath } from '../Features/Helpers/UrlHelper.js' +import UrlHelper from '../Features/Helpers/UrlHelper.mjs' + +const { getSafeRedirectPath } = UrlHelper function unsupportedBrowserMiddleware(req, res, next) { if (!Settings.unsupportedBrowsers) return next() diff --git a/services/web/app/src/router.mjs b/services/web/app/src/router.mjs index 27c25f3e65..52c215ef13 100644 --- a/services/web/app/src/router.mjs +++ b/services/web/app/src/router.mjs @@ -14,7 +14,7 @@ import metrics from '@overleaf/metrics' import ReferalController from './Features/Referal/ReferalController.mjs' import AuthenticationController from './Features/Authentication/AuthenticationController.mjs' import PermissionsController from './Features/Authorization/PermissionsController.mjs' -import SessionManager from './Features/Authentication/SessionManager.js' +import SessionManager from './Features/Authentication/SessionManager.mjs' import TagsController from './Features/Tags/TagsController.mjs' import NotificationsController from './Features/Notifications/NotificationsController.mjs' import CollaboratorsRouter from './Features/Collaborators/CollaboratorsRouter.mjs' diff --git a/services/web/modules/launchpad/app/src/LaunchpadController.mjs b/services/web/modules/launchpad/app/src/LaunchpadController.mjs index aa2b11be04..101372b3ca 100644 --- a/services/web/modules/launchpad/app/src/LaunchpadController.mjs +++ b/services/web/modules/launchpad/app/src/LaunchpadController.mjs @@ -4,12 +4,12 @@ import Settings from '@overleaf/settings' import Path from 'node:path' import logger from '@overleaf/logger' import UserRegistrationHandler from '../../../../app/src/Features/User/UserRegistrationHandler.mjs' -import EmailHandler from '../../../../app/src/Features/Email/EmailHandler.js' -import UserGetter from '../../../../app/src/Features/User/UserGetter.js' +import EmailHandler from '../../../../app/src/Features/Email/EmailHandler.mjs' +import UserGetter from '../../../../app/src/Features/User/UserGetter.mjs' import { User } from '../../../../app/src/models/User.js' -import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.js' +import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.mjs' import AuthenticationController from '../../../../app/src/Features/Authentication/AuthenticationController.mjs' -import SessionManager from '../../../../app/src/Features/Authentication/SessionManager.js' +import SessionManager from '../../../../app/src/Features/Authentication/SessionManager.mjs' import AdminAuthorizationHelper from '../../../../app/src/Features/Helpers/AdminAuthorizationHelper.mjs' const { hasAdminAccess } = AdminAuthorizationHelper diff --git a/services/web/modules/launchpad/test/unit/src/LaunchpadController.test.mjs b/services/web/modules/launchpad/test/unit/src/LaunchpadController.test.mjs index f789d0227f..80150aa705 100644 --- a/services/web/modules/launchpad/test/unit/src/LaunchpadController.test.mjs +++ b/services/web/modules/launchpad/test/unit/src/LaunchpadController.test.mjs @@ -42,11 +42,11 @@ describe('LaunchpadController', function () { }) ) - vi.doMock('../../../../../app/src/Features/Email/EmailHandler.js', () => ({ + vi.doMock('../../../../../app/src/Features/Email/EmailHandler.mjs', () => ({ default: (ctx.EmailHandler = { promises: {} }), })) - vi.doMock('../../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: (ctx.UserGetter = { promises: {}, }), @@ -64,14 +64,14 @@ describe('LaunchpadController', function () { ) vi.doMock( - '../../../../../app/src/Features/Authentication/AuthenticationManager.js', + '../../../../../app/src/Features/Authentication/AuthenticationManager.mjs', () => ({ default: (ctx.AuthenticationManager = {}), }) ) vi.doMock( - '../../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: (ctx.SessionManager = { getSessionUser: sinon.stub(), diff --git a/services/web/modules/server-ce-scripts/scripts/delete-user.mjs b/services/web/modules/server-ce-scripts/scripts/delete-user.mjs index 9ce845115e..d6c32fda71 100644 --- a/services/web/modules/server-ce-scripts/scripts/delete-user.mjs +++ b/services/web/modules/server-ce-scripts/scripts/delete-user.mjs @@ -1,4 +1,4 @@ -import UserGetter from '../../../app/src/Features/User/UserGetter.js' +import UserGetter from '../../../app/src/Features/User/UserGetter.mjs' import UserDeleter from '../../../app/src/Features/User/UserDeleter.mjs' import { fileURLToPath } from 'url' import minimist from 'minimist' diff --git a/services/web/modules/server-ce-scripts/scripts/migrate-user-emails.mjs b/services/web/modules/server-ce-scripts/scripts/migrate-user-emails.mjs index e3d37c126a..b8cc54626b 100644 --- a/services/web/modules/server-ce-scripts/scripts/migrate-user-emails.mjs +++ b/services/web/modules/server-ce-scripts/scripts/migrate-user-emails.mjs @@ -15,9 +15,9 @@ import os from 'os' import fs from 'fs' import * as csv from 'csv/sync' import { parseEmail } from '../../../app/src/Features/Helpers/EmailHelper.js' -import UserGetter from '../../../app/src/Features/User/UserGetter.js' -import UserUpdater from '../../../app/src/Features/User/UserUpdater.js' -import UserSessionsManager from '../../../app/src/Features/User/UserSessionsManager.js' +import UserGetter from '../../../app/src/Features/User/UserGetter.mjs' +import UserUpdater from '../../../app/src/Features/User/UserUpdater.mjs' +import UserSessionsManager from '../../../app/src/Features/User/UserSessionsManager.mjs' const hostname = os.hostname() const scriptTimestamp = new Date().toISOString() diff --git a/services/web/modules/server-ce-scripts/scripts/transfer-all-projects-to-user.mjs b/services/web/modules/server-ce-scripts/scripts/transfer-all-projects-to-user.mjs index 010658a2f4..eafd301c0b 100644 --- a/services/web/modules/server-ce-scripts/scripts/transfer-all-projects-to-user.mjs +++ b/services/web/modules/server-ce-scripts/scripts/transfer-all-projects-to-user.mjs @@ -1,7 +1,7 @@ import { ObjectId } from '../../../app/src/infrastructure/mongodb.js' import minimist from 'minimist' import OwnershipTransferHandler from '../../../app/src/Features/Collaborators/OwnershipTransferHandler.mjs' -import UserGetter from '../../../app/src/Features/User/UserGetter.js' +import UserGetter from '../../../app/src/Features/User/UserGetter.mjs' import EmailHelper from '../../../app/src/Features/Helpers/EmailHelper.js' const args = minimist(process.argv.slice(2), { diff --git a/services/web/modules/server-ce-scripts/scripts/upgrade-user-features.mjs b/services/web/modules/server-ce-scripts/scripts/upgrade-user-features.mjs index db0b7c66f2..f70eebc71f 100644 --- a/services/web/modules/server-ce-scripts/scripts/upgrade-user-features.mjs +++ b/services/web/modules/server-ce-scripts/scripts/upgrade-user-features.mjs @@ -1,13 +1,10 @@ import Settings from '@overleaf/settings' import logger from '@overleaf/logger' import { db } from '../../../app/src/infrastructure/mongodb.js' -import { - mergeFeatures, - compareFeatures, -} from '../../../app/src/Features/Subscription/FeaturesHelper.js' +import FeaturesHelper from '../../../app/src/Features/Subscription/FeaturesHelper.mjs' import { fileURLToPath } from 'url' const DRY_RUN = !process.argv.includes('--dry-run=false') - +const { mergeFeatures, compareFeatures } = FeaturesHelper async function main(DRY_RUN, defaultFeatures) { logger.info({ defaultFeatures }, 'default features') diff --git a/services/web/modules/user-activate/app/src/UserActivateController.mjs b/services/web/modules/user-activate/app/src/UserActivateController.mjs index 1b712479c2..6bee167e03 100644 --- a/services/web/modules/user-activate/app/src/UserActivateController.mjs +++ b/services/web/modules/user-activate/app/src/UserActivateController.mjs @@ -1,6 +1,6 @@ import Path from 'node:path' import { fileURLToPath } from 'node:url' -import UserGetter from '../../../../app/src/Features/User/UserGetter.js' +import UserGetter from '../../../../app/src/Features/User/UserGetter.mjs' import UserRegistrationHandler from '../../../../app/src/Features/User/UserRegistrationHandler.mjs' import ErrorController from '../../../../app/src/Features/Errors/ErrorController.mjs' import { expressify } from '@overleaf/promise-utils' diff --git a/services/web/modules/user-activate/test/unit/src/UserActivateController.test.mjs b/services/web/modules/user-activate/test/unit/src/UserActivateController.test.mjs index 217af268cd..6908f37eec 100644 --- a/services/web/modules/user-activate/test/unit/src/UserActivateController.test.mjs +++ b/services/web/modules/user-activate/test/unit/src/UserActivateController.test.mjs @@ -30,7 +30,7 @@ describe('UserActivateController', function () { }, } - vi.doMock('../../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) diff --git a/services/web/scripts/add_feature_override.mjs b/services/web/scripts/add_feature_override.mjs index 0a556e1b9d..40a56bdf43 100644 --- a/services/web/scripts/add_feature_override.mjs +++ b/services/web/scripts/add_feature_override.mjs @@ -28,10 +28,10 @@ import minimist from 'minimist' import fs from 'node:fs' import { ObjectId } from '../app/src/infrastructure/mongodb.js' import pLimit from 'p-limit' -import FeaturesUpdater from '../app/src/Features/Subscription/FeaturesUpdater.js' -import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.js' -import UserFeaturesUpdater from '../app/src/Features/Subscription/UserFeaturesUpdater.js' -import UserGetter from '../app/src/Features/User/UserGetter.js' +import FeaturesUpdater from '../app/src/Features/Subscription/FeaturesUpdater.mjs' +import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.mjs' +import UserFeaturesUpdater from '../app/src/Features/Subscription/UserFeaturesUpdater.mjs' +import UserGetter from '../app/src/Features/User/UserGetter.mjs' const processLogger = { failed: [], diff --git a/services/web/scripts/add_user_count_to_csv.mjs b/services/web/scripts/add_user_count_to_csv.mjs index 5447ec9c73..2a404cd7cc 100644 --- a/services/web/scripts/add_user_count_to_csv.mjs +++ b/services/web/scripts/add_user_count_to_csv.mjs @@ -6,7 +6,7 @@ import fs from 'node:fs' // eslint-disable-next-line import/no-unresolved import * as csv from 'csv/sync' import minimist from 'minimist' -import UserGetter from '../app/src/Features/User/UserGetter.js' +import UserGetter from '../app/src/Features/User/UserGetter.mjs' import { db } from '../app/src/infrastructure/mongodb.js' import _ from 'lodash' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/analytics/backfill_recurly_to_subscription_mapping.mjs b/services/web/scripts/analytics/backfill_recurly_to_subscription_mapping.mjs index 93758b6c66..6ac495325c 100644 --- a/services/web/scripts/analytics/backfill_recurly_to_subscription_mapping.mjs +++ b/services/web/scripts/analytics/backfill_recurly_to_subscription_mapping.mjs @@ -16,8 +16,8 @@ import minimist from 'minimist' import { z } from 'zod' import { batchedUpdate } from '@overleaf/mongo-utils/batchedUpdate.js' import { db } from '../../app/src/infrastructure/mongodb.js' -import AccountMappingHelper from '../../app/src/Features/Analytics/AccountMappingHelper.js' -import { registerAccountMapping } from '../../app/src/Features/Analytics/AnalyticsManager.js' +import AccountMappingHelper from '../../app/src/Features/Analytics/AccountMappingHelper.mjs' +import { registerAccountMapping } from '../../app/src/Features/Analytics/AnalyticsManager.mjs' import { triggerGracefulShutdown } from '../../app/src/infrastructure/GracefulShutdown.js' import { scriptRunner } from '../lib/ScriptRunner.mjs' diff --git a/services/web/scripts/analytics/backfill_stripe_to_subscription_mapping.mjs b/services/web/scripts/analytics/backfill_stripe_to_subscription_mapping.mjs index deee243681..e0d89e0519 100644 --- a/services/web/scripts/analytics/backfill_stripe_to_subscription_mapping.mjs +++ b/services/web/scripts/analytics/backfill_stripe_to_subscription_mapping.mjs @@ -15,8 +15,8 @@ import logger from '@overleaf/logger' import minimist from 'minimist' import { batchedUpdate } from '@overleaf/mongo-utils/batchedUpdate.js' import { db } from '../../app/src/infrastructure/mongodb.js' -import AccountMappingHelper from '../../app/src/Features/Analytics/AccountMappingHelper.js' -import { registerAccountMapping } from '../../app/src/Features/Analytics/AnalyticsManager.js' +import AccountMappingHelper from '../../app/src/Features/Analytics/AccountMappingHelper.mjs' +import { registerAccountMapping } from '../../app/src/Features/Analytics/AnalyticsManager.mjs' import { gracefulShutdown } from '../../app/src/infrastructure/GracefulShutdown.js' import Validation from '../../app/src/infrastructure/Validation.js' import { scriptRunner } from '../lib/ScriptRunner.mjs' diff --git a/services/web/scripts/analytics/sync_group_subscription_memberships.mjs b/services/web/scripts/analytics/sync_group_subscription_memberships.mjs index f687f43460..21ab920c5e 100644 --- a/services/web/scripts/analytics/sync_group_subscription_memberships.mjs +++ b/services/web/scripts/analytics/sync_group_subscription_memberships.mjs @@ -1,6 +1,6 @@ import GoogleBigQueryHelper from './helpers/GoogleBigQueryHelper.mjs' import { Subscription } from '../../app/src/models/Subscription.js' -import AnalyticsManager from '../../app/src/Features/Analytics/AnalyticsManager.js' +import AnalyticsManager from '../../app/src/Features/Analytics/AnalyticsManager.mjs' import { DeletedSubscription } from '../../app/src/models/DeletedSubscription.js' import minimist from 'minimist' import _ from 'lodash' diff --git a/services/web/scripts/attach_dangling_comments_to_doc.mjs b/services/web/scripts/attach_dangling_comments_to_doc.mjs index df9a7eae5a..9c929adeb8 100644 --- a/services/web/scripts/attach_dangling_comments_to_doc.mjs +++ b/services/web/scripts/attach_dangling_comments_to_doc.mjs @@ -2,9 +2,9 @@ import minimist from 'minimist' import process from 'node:process' -import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.js' +import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.mjs' import DocumentUpdaterHandler from '../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.mjs' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import HistoryManager from '../app/src/Features/History/HistoryManager.mjs' import { db, ObjectId } from '../app/src/infrastructure/mongodb.js' diff --git a/services/web/scripts/back_fill_staff_access.mjs b/services/web/scripts/back_fill_staff_access.mjs index 76d17fba83..10f1edfac9 100644 --- a/services/web/scripts/back_fill_staff_access.mjs +++ b/services/web/scripts/back_fill_staff_access.mjs @@ -2,7 +2,7 @@ import { db, READ_PREFERENCE_SECONDARY, } from '../app/src/infrastructure/mongodb.js' -import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.js' +import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.mjs' import { scriptRunner } from './lib/ScriptRunner.mjs' const COMMIT = process.argv.includes('--commit') diff --git a/services/web/scripts/back_fill_warning_user_personal_and_group_subscription.mjs b/services/web/scripts/back_fill_warning_user_personal_and_group_subscription.mjs index f9b5388e45..012c224685 100644 --- a/services/web/scripts/back_fill_warning_user_personal_and_group_subscription.mjs +++ b/services/web/scripts/back_fill_warning_user_personal_and_group_subscription.mjs @@ -1,4 +1,4 @@ -import NotificationsBuilder from '../app/src/Features/Notifications/NotificationsBuilder.js' +import NotificationsBuilder from '../app/src/Features/Notifications/NotificationsBuilder.mjs' import { db } from '../app/src/infrastructure/mongodb.js' import { batchedUpdate } from '@overleaf/mongo-utils/batchedUpdate.js' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/backfill_mixpanel_user_properties.mjs b/services/web/scripts/backfill_mixpanel_user_properties.mjs index ef8b8e0565..1324cefb1d 100644 --- a/services/web/scripts/backfill_mixpanel_user_properties.mjs +++ b/services/web/scripts/backfill_mixpanel_user_properties.mjs @@ -3,9 +3,9 @@ import '../app/src/models/User.js' import { batchedUpdateWithResultHandling } from '@overleaf/mongo-utils/batchedUpdate.js' import { promiseMapWithLimit } from '@overleaf/promise-utils' import { getQueue } from '../app/src/infrastructure/Queues.js' -import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.js' -import PlansLocator from '../app/src/Features/Subscription/PlansLocator.js' -import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.js' +import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.mjs' +import PlansLocator from '../app/src/Features/Subscription/PlansLocator.mjs' +import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.mjs' import { db } from '../app/src/infrastructure/mongodb.js' const WRITE_CONCURRENCY = parseInt(process.env.WRITE_CONCURRENCY || '10', 10) diff --git a/services/web/scripts/backfill_user_properties.mjs b/services/web/scripts/backfill_user_properties.mjs index bc4b360e55..9325170a51 100644 --- a/services/web/scripts/backfill_user_properties.mjs +++ b/services/web/scripts/backfill_user_properties.mjs @@ -1,9 +1,9 @@ import { batchedUpdateWithResultHandling } from '@overleaf/mongo-utils/batchedUpdate.js' import { promiseMapWithLimit } from '@overleaf/promise-utils' -import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.js' -import PlansLocator from '../app/src/Features/Subscription/PlansLocator.js' -import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.js' -import AnalyticsManager from '../app/src/Features/Analytics/AnalyticsManager.js' +import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.mjs' +import PlansLocator from '../app/src/Features/Subscription/PlansLocator.mjs' +import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.mjs' +import AnalyticsManager from '../app/src/Features/Analytics/AnalyticsManager.mjs' import { db } from '../app/src/infrastructure/mongodb.js' const WRITE_CONCURRENCY = parseInt(process.env.WRITE_CONCURRENCY, 10) || 10 diff --git a/services/web/scripts/check_docs.mjs b/services/web/scripts/check_docs.mjs index de93f5545a..654a79c002 100644 --- a/services/web/scripts/check_docs.mjs +++ b/services/web/scripts/check_docs.mjs @@ -7,7 +7,7 @@ import { ObjectId, READ_PREFERENCE_SECONDARY, } from '../app/src/infrastructure/mongodb.js' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import { NotFoundError } from '../app/src/Features/Errors/Errors.js' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/check_project_files.mjs b/services/web/scripts/check_project_files.mjs index 8e592ec2c5..dae68151b0 100644 --- a/services/web/scripts/check_project_files.mjs +++ b/services/web/scripts/check_project_files.mjs @@ -1,6 +1,6 @@ import { scriptRunner } from './lib/ScriptRunner.mjs' import Path from 'node:path' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.mjs' import ProjectGetter from '../app/src/Features/Project/ProjectGetter.mjs' import ProjectEntityMongoUpdateHandler from '../app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs' diff --git a/services/web/scripts/clear_admin_sessions.mjs b/services/web/scripts/clear_admin_sessions.mjs index c3f5b28c4b..ae884e498d 100644 --- a/services/web/scripts/clear_admin_sessions.mjs +++ b/services/web/scripts/clear_admin_sessions.mjs @@ -2,7 +2,7 @@ import { db, READ_PREFERENCE_SECONDARY, } from '../app/src/infrastructure/mongodb.js' -import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.js' +import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.mjs' import { scriptRunner } from './lib/ScriptRunner.mjs' const COMMIT = process.argv.includes('--commit') diff --git a/services/web/scripts/clear_sessions_2fa.mjs b/services/web/scripts/clear_sessions_2fa.mjs index d6557faa62..1d9038727d 100644 --- a/services/web/scripts/clear_sessions_2fa.mjs +++ b/services/web/scripts/clear_sessions_2fa.mjs @@ -1,5 +1,5 @@ import { promisify, promiseMapWithLimit } from '@overleaf/promise-utils' -import UserSessionsRedis from '../app/src/Features/User/UserSessionsRedis.js' +import UserSessionsRedis from '../app/src/Features/User/UserSessionsRedis.mjs' import minimist from 'minimist' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/clear_sessions_set_must_reconfirm.mjs b/services/web/scripts/clear_sessions_set_must_reconfirm.mjs index e459a58225..3518ee9415 100644 --- a/services/web/scripts/clear_sessions_set_must_reconfirm.mjs +++ b/services/web/scripts/clear_sessions_set_must_reconfirm.mjs @@ -1,8 +1,8 @@ import fs from 'node:fs' import { ObjectId } from '../app/src/infrastructure/mongodb.js' -import UserUpdater from '../app/src/Features/User/UserUpdater.js' -import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.js' -import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.js' +import UserUpdater from '../app/src/Features/User/UserUpdater.mjs' +import UserSessionsManager from '../app/src/Features/User/UserSessionsManager.mjs' +import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.mjs' import { promiseMapWithLimit } from '@overleaf/promise-utils' const ASYNC_LIMIT = 10 diff --git a/services/web/scripts/delete-orphaned-docs/delete-orphaned-docs.mjs b/services/web/scripts/delete-orphaned-docs/delete-orphaned-docs.mjs index 6eb0eceaec..4f400ebf9b 100644 --- a/services/web/scripts/delete-orphaned-docs/delete-orphaned-docs.mjs +++ b/services/web/scripts/delete-orphaned-docs/delete-orphaned-docs.mjs @@ -2,7 +2,7 @@ import fs from 'node:fs' import minimist from 'minimist' import readline from 'node:readline' import { db, ObjectId } from '../../app/src/infrastructure/mongodb.js' -import DocstoreManagerModule from '../../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManagerModule from '../../app/src/Features/Docstore/DocstoreManager.mjs' const { promises: DocstoreManager } = DocstoreManagerModule diff --git a/services/web/scripts/delete_dangling_comments.mjs b/services/web/scripts/delete_dangling_comments.mjs index ba6802c9d1..8e0cdd5ca3 100644 --- a/services/web/scripts/delete_dangling_comments.mjs +++ b/services/web/scripts/delete_dangling_comments.mjs @@ -1,9 +1,9 @@ // @ts-check import minimist from 'minimist' -import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.js' +import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.mjs' import DocumentUpdaterHandler from '../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.mjs' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import HistoryManager from '../app/src/Features/History/HistoryManager.mjs' import { db, ObjectId } from '../app/src/infrastructure/mongodb.js' diff --git a/services/web/scripts/delete_orphaned_chat_threads.mjs b/services/web/scripts/delete_orphaned_chat_threads.mjs index 816a2660bc..c9a3c59876 100644 --- a/services/web/scripts/delete_orphaned_chat_threads.mjs +++ b/services/web/scripts/delete_orphaned_chat_threads.mjs @@ -1,7 +1,7 @@ import mongodb from 'mongodb-legacy' import { promiseMapWithLimit } from '@overleaf/promise-utils' import { batchedUpdate } from '@overleaf/mongo-utils/batchedUpdate.js' -import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.js' +import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.mjs' import DeleteOrphanedDataHelper from './delete_orphaned_data_helper.mjs' import { ensureMongoTimeout } from './helpers/env_variable_helper.mjs' import { db } from '../app/src/infrastructure/mongodb.js' diff --git a/services/web/scripts/delete_orphaned_doc_comment_ranges.mjs b/services/web/scripts/delete_orphaned_doc_comment_ranges.mjs index 7337163b5c..dafafc7d30 100644 --- a/services/web/scripts/delete_orphaned_doc_comment_ranges.mjs +++ b/services/web/scripts/delete_orphaned_doc_comment_ranges.mjs @@ -1,6 +1,6 @@ import minimist from 'minimist' -import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.js' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import ChatApiHandler from '../app/src/Features/Chat/ChatApiHandler.mjs' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import DocumentUpdaterHandler from '../app/src/Features/DocumentUpdater/DocumentUpdaterHandler.mjs' import { promiseMapWithLimit } from '@overleaf/promise-utils' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/delete_orphaned_docs_online_check.mjs b/services/web/scripts/delete_orphaned_docs_online_check.mjs index 5ab8e17d45..d90ef64e75 100644 --- a/services/web/scripts/delete_orphaned_docs_online_check.mjs +++ b/services/web/scripts/delete_orphaned_docs_online_check.mjs @@ -1,4 +1,4 @@ -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import { promisify } from 'node:util' import mongodb from 'mongodb-legacy' import { diff --git a/services/web/scripts/delete_subscriptions.mjs b/services/web/scripts/delete_subscriptions.mjs index 54fe472447..2cf17d75c2 100644 --- a/services/web/scripts/delete_subscriptions.mjs +++ b/services/web/scripts/delete_subscriptions.mjs @@ -1,5 +1,5 @@ import { Subscription } from '../app/src/models/Subscription.js' -import SubscriptionUpdater from '../app/src/Features/Subscription/SubscriptionUpdater.js' +import SubscriptionUpdater from '../app/src/Features/Subscription/SubscriptionUpdater.mjs' import minimist from 'minimist' import mongodb from 'mongodb-legacy' diff --git a/services/web/scripts/e2e_test_setup.mjs b/services/web/scripts/e2e_test_setup.mjs index f140d62c8d..4fae1fcade 100644 --- a/services/web/scripts/e2e_test_setup.mjs +++ b/services/web/scripts/e2e_test_setup.mjs @@ -6,7 +6,7 @@ import Settings from '@overleaf/settings' import { db } from '../app/src/infrastructure/mongodb.js' import GracefulShutdown from '../app/src/infrastructure/GracefulShutdown.js' import ProjectDeleter from '../app/src/Features/Project/ProjectDeleter.mjs' -import SplitTestManager from '../app/src/Features/SplitTests/SplitTestManager.js' +import SplitTestManager from '../app/src/Features/SplitTests/SplitTestManager.mjs' import UserDeleter from '../app/src/Features/User/UserDeleter.mjs' import UserRegistrationHandler from '../app/src/Features/User/UserRegistrationHandler.mjs' diff --git a/services/web/scripts/extract_onboardingdatacollection_never_used_latex.mjs b/services/web/scripts/extract_onboardingdatacollection_never_used_latex.mjs index 313d074115..339b08876e 100644 --- a/services/web/scripts/extract_onboardingdatacollection_never_used_latex.mjs +++ b/services/web/scripts/extract_onboardingdatacollection_never_used_latex.mjs @@ -4,7 +4,7 @@ import fs from 'node:fs' import minimist from 'minimist' import { OnboardingDataCollection } from '../app/src/models/OnboardingDataCollection.js' import { User } from '../app/src/models/User.js' -import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.js' +import SubscriptionLocator from '../app/src/Features/Subscription/SubscriptionLocator.mjs' import Settings from '@overleaf/settings' import { fetchJson } from '@overleaf/fetch-utils' diff --git a/services/web/scripts/fix_comment_id.mjs b/services/web/scripts/fix_comment_id.mjs index ea7268929f..5aa933a634 100644 --- a/services/web/scripts/fix_comment_id.mjs +++ b/services/web/scripts/fix_comment_id.mjs @@ -1,7 +1,7 @@ // @ts-check import minimist from 'minimist' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import { db, ObjectId } from '../app/src/infrastructure/mongodb.js' const OPTS = parseArgs() diff --git a/services/web/scripts/fix_oversized_docs.mjs b/services/web/scripts/fix_oversized_docs.mjs index c30bd60744..ea6b6533ad 100644 --- a/services/web/scripts/fix_oversized_docs.mjs +++ b/services/web/scripts/fix_oversized_docs.mjs @@ -1,7 +1,7 @@ import fs from 'node:fs' import minimist from 'minimist' import { ObjectId } from '../app/src/infrastructure/mongodb.js' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import FileStoreHandler from '../app/src/Features/FileStore/FileStoreHandler.mjs' import FileWriter from '../app/src/infrastructure/FileWriter.js' import ProjectEntityMongoUpdateHandler from '../app/src/Features/Project/ProjectEntityMongoUpdateHandler.mjs' diff --git a/services/web/scripts/lowercase_institution_user_ids.mjs b/services/web/scripts/lowercase_institution_user_ids.mjs index e72bff87ef..2e4c3a1434 100644 --- a/services/web/scripts/lowercase_institution_user_ids.mjs +++ b/services/web/scripts/lowercase_institution_user_ids.mjs @@ -1,6 +1,6 @@ import { db } from '../app/src/infrastructure/mongodb.js' import minimist from 'minimist' -import UserGetter from '../app/src/Features/User/UserGetter.js' +import UserGetter from '../app/src/Features/User/UserGetter.mjs' import fs from 'node:fs' import { scriptRunner } from './lib/ScriptRunner.mjs' diff --git a/services/web/scripts/merge_group_subscription_members.mjs b/services/web/scripts/merge_group_subscription_members.mjs index d8201c95ea..c710250965 100644 --- a/services/web/scripts/merge_group_subscription_members.mjs +++ b/services/web/scripts/merge_group_subscription_members.mjs @@ -8,7 +8,7 @@ import { db, ObjectId } from '../app/src/infrastructure/mongodb.js' -import SubscriptionUpdater from '../app/src/Features/Subscription/SubscriptionUpdater.js' +import SubscriptionUpdater from '../app/src/Features/Subscription/SubscriptionUpdater.mjs' import minimist from 'minimist' import { scriptRunner } from './lib/ScriptRunner.mjs' const argv = minimist(process.argv.slice(2), { diff --git a/services/web/scripts/purge_non_logged_in_sessions.mjs b/services/web/scripts/purge_non_logged_in_sessions.mjs index 21565360f9..640cc386aa 100644 --- a/services/web/scripts/purge_non_logged_in_sessions.mjs +++ b/services/web/scripts/purge_non_logged_in_sessions.mjs @@ -1,6 +1,6 @@ import RedisWrapper from '@overleaf/redis-wrapper' import Settings from '@overleaf/settings' -import SessionManager from '../app/src/Features/Authentication/SessionManager.js' +import SessionManager from '../app/src/Features/Authentication/SessionManager.mjs' import minimist from 'minimist' const redis = RedisWrapper.createClient(Settings.redis.websessions) diff --git a/services/web/scripts/recurly/collect_paypal_past_due_invoice.mjs b/services/web/scripts/recurly/collect_paypal_past_due_invoice.mjs index 7f058b800b..9331efb2e3 100644 --- a/services/web/scripts/recurly/collect_paypal_past_due_invoice.mjs +++ b/services/web/scripts/recurly/collect_paypal_past_due_invoice.mjs @@ -1,4 +1,4 @@ -import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.js' +import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.mjs' import minimist from 'minimist' import logger from '@overleaf/logger' import { fileURLToPath } from 'node:url' diff --git a/services/web/scripts/recurly/get_paypal_accounts_csv.mjs b/services/web/scripts/recurly/get_paypal_accounts_csv.mjs index d94b3fe033..d28649ef0d 100644 --- a/services/web/scripts/recurly/get_paypal_accounts_csv.mjs +++ b/services/web/scripts/recurly/get_paypal_accounts_csv.mjs @@ -1,4 +1,4 @@ -import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.js' +import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.mjs' import async from 'async' import { Parser as CSVParser } from 'json2csv' diff --git a/services/web/scripts/recurly/resync_recurly_state_single_subscription.mjs b/services/web/scripts/recurly/resync_recurly_state_single_subscription.mjs index 85d3e3eb77..13b005b02a 100644 --- a/services/web/scripts/recurly/resync_recurly_state_single_subscription.mjs +++ b/services/web/scripts/recurly/resync_recurly_state_single_subscription.mjs @@ -1,6 +1,6 @@ import { Subscription } from '../../app/src/models/Subscription.js' -import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.js' -import SubscriptionUpdater from '../../app/src/Features/Subscription/SubscriptionUpdater.js' +import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.mjs' +import SubscriptionUpdater from '../../app/src/Features/Subscription/SubscriptionUpdater.mjs' import minimist from 'minimist' import { setTimeout } from 'node:timers/promises' import util from 'node:util' diff --git a/services/web/scripts/recurly/resync_subscriptions.mjs b/services/web/scripts/recurly/resync_subscriptions.mjs index 6a03c8e3c1..00f10b7b29 100644 --- a/services/web/scripts/recurly/resync_subscriptions.mjs +++ b/services/web/scripts/recurly/resync_subscriptions.mjs @@ -1,6 +1,6 @@ import { Subscription } from '../../app/src/models/Subscription.js' -import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.js' -import SubscriptionUpdater from '../../app/src/Features/Subscription/SubscriptionUpdater.js' +import RecurlyWrapper from '../../app/src/Features/Subscription/RecurlyWrapper.mjs' +import SubscriptionUpdater from '../../app/src/Features/Subscription/SubscriptionUpdater.mjs' import minimist from 'minimist' import { setTimeout } from 'node:timers/promises' diff --git a/services/web/scripts/refresh_features.mjs b/services/web/scripts/refresh_features.mjs index 51d8acecc6..23c6ad44cb 100644 --- a/services/web/scripts/refresh_features.mjs +++ b/services/web/scripts/refresh_features.mjs @@ -2,10 +2,10 @@ import { db } from '../app/src/infrastructure/mongodb.js' import minimist from 'minimist' import _ from 'lodash' import async from 'async' -import FeaturesUpdater from '../app/src/Features/Subscription/FeaturesUpdater.js' -import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.js' -import UserFeaturesUpdater from '../app/src/Features/Subscription/UserFeaturesUpdater.js' -import AnalyticsManager from '../app/src/Features/Analytics/AnalyticsManager.js' +import FeaturesUpdater from '../app/src/Features/Subscription/FeaturesUpdater.mjs' +import FeaturesHelper from '../app/src/Features/Subscription/FeaturesHelper.mjs' +import UserFeaturesUpdater from '../app/src/Features/Subscription/UserFeaturesUpdater.mjs' +import AnalyticsManager from '../app/src/Features/Analytics/AnalyticsManager.mjs' import DropboxHandler from '../modules/dropbox/app/src/DropboxHandler.mjs' import { OError } from '../app/src/Features/Errors/Errors.js' diff --git a/services/web/scripts/remove_email.mjs b/services/web/scripts/remove_email.mjs index 2e3d78421b..4f85807b4b 100644 --- a/services/web/scripts/remove_email.mjs +++ b/services/web/scripts/remove_email.mjs @@ -1,6 +1,6 @@ import { ObjectId } from '../app/src/infrastructure/mongodb.js' -import UserUpdater from '../app/src/Features/User/UserUpdater.js' -import UserGetter from '../app/src/Features/User/UserGetter.js' +import UserUpdater from '../app/src/Features/User/UserUpdater.mjs' +import UserGetter from '../app/src/Features/User/UserGetter.mjs' async function removeEmail() { const userId = process.argv[2] diff --git a/services/web/scripts/remove_unconfirmed_emails.mjs b/services/web/scripts/remove_unconfirmed_emails.mjs index 246334315a..6582ddca94 100644 --- a/services/web/scripts/remove_unconfirmed_emails.mjs +++ b/services/web/scripts/remove_unconfirmed_emails.mjs @@ -3,7 +3,7 @@ import minimist from 'minimist' import { batchedUpdate } from '@overleaf/mongo-utils/batchedUpdate.js' import { db, ObjectId } from '../app/src/infrastructure/mongodb.js' -import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.js' +import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.mjs' import fs from 'node:fs/promises' import * as csv from 'csv' import { promisify } from 'node:util' diff --git a/services/web/scripts/remove_user_enrollment.mjs b/services/web/scripts/remove_user_enrollment.mjs index e3b80b6090..a4ebcdb4d2 100644 --- a/services/web/scripts/remove_user_enrollment.mjs +++ b/services/web/scripts/remove_user_enrollment.mjs @@ -9,7 +9,7 @@ import minimist from 'minimist' import { ObjectId } from '../app/src/infrastructure/mongodb.js' import { User } from '../app/src/models/User.js' import { Subscription } from '../app/src/models/Subscription.js' -import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.js' +import UserAuditLogHandler from '../app/src/Features/User/UserAuditLogHandler.mjs' const argv = minimist(process.argv.slice(2)) const COMMIT = argv.commit !== undefined diff --git a/services/web/scripts/restore_orphaned_docs.mjs b/services/web/scripts/restore_orphaned_docs.mjs index 9c9f3aaaa9..07d6aa763d 100644 --- a/services/web/scripts/restore_orphaned_docs.mjs +++ b/services/web/scripts/restore_orphaned_docs.mjs @@ -1,6 +1,6 @@ import ProjectEntityRestoreHandler from '../app/src/Features/Project/ProjectEntityRestoreHandler.mjs' import ProjectEntityHandler from '../app/src/Features/Project/ProjectEntityHandler.mjs' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import { scriptRunner } from './lib/ScriptRunner.mjs' const ARGV = process.argv.slice(2) diff --git a/services/web/scripts/restore_soft_deleted_docs.mjs b/services/web/scripts/restore_soft_deleted_docs.mjs index a3694ff40b..20d83ced91 100644 --- a/services/web/scripts/restore_soft_deleted_docs.mjs +++ b/services/web/scripts/restore_soft_deleted_docs.mjs @@ -1,5 +1,5 @@ import ProjectEntityRestoreHandler from '../app/src/Features/Project/ProjectEntityRestoreHandler.mjs' -import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.js' +import DocstoreManager from '../app/src/Features/Docstore/DocstoreManager.mjs' import { scriptRunner } from './lib/ScriptRunner.mjs' const ARGV = process.argv.slice(2) diff --git a/services/web/scripts/suspend_users.mjs b/services/web/scripts/suspend_users.mjs index e54fbf8347..76d7eef2ca 100644 --- a/services/web/scripts/suspend_users.mjs +++ b/services/web/scripts/suspend_users.mjs @@ -5,7 +5,7 @@ */ import fs from 'node:fs' import { ObjectId } from '../app/src/infrastructure/mongodb.js' -import UserUpdater from '../app/src/Features/User/UserUpdater.js' +import UserUpdater from '../app/src/Features/User/UserUpdater.mjs' import { promiseMapWithLimit } from '@overleaf/promise-utils' const ASYNC_LIMIT = 10 diff --git a/services/web/scripts/sync-user-entitlements/sync-user-entitlements.mjs b/services/web/scripts/sync-user-entitlements/sync-user-entitlements.mjs index 72db3e8a5b..02540e7ffa 100644 --- a/services/web/scripts/sync-user-entitlements/sync-user-entitlements.mjs +++ b/services/web/scripts/sync-user-entitlements/sync-user-entitlements.mjs @@ -1,6 +1,6 @@ import fs from 'node:fs' import minimist from 'minimist' -import InstitutionsAPIModule from '../../app/src/Features/Institutions/InstitutionsAPI.js' +import InstitutionsAPIModule from '../../app/src/Features/Institutions/InstitutionsAPI.mjs' const { promises: InstitutionsAPI } = InstitutionsAPIModule const argv = minimist(process.argv.slice(2)) diff --git a/services/web/scripts/unlink_third_party_id.mjs b/services/web/scripts/unlink_third_party_id.mjs index eb76995bc2..72793b5e5e 100644 --- a/services/web/scripts/unlink_third_party_id.mjs +++ b/services/web/scripts/unlink_third_party_id.mjs @@ -1,6 +1,6 @@ import minimist from 'minimist' -import ThirdPartyIdentityManager from '../app/src/Features/User/ThirdPartyIdentityManager.js' -import UserGetter from '../app/src/Features/User/UserGetter.js' +import ThirdPartyIdentityManager from '../app/src/Features/User/ThirdPartyIdentityManager.mjs' +import UserGetter from '../app/src/Features/User/UserGetter.mjs' import { scriptRunner } from './lib/ScriptRunner.mjs' /** diff --git a/services/web/test/acceptance/src/AdminPrivilegeAvailableTests.mjs b/services/web/test/acceptance/src/AdminPrivilegeAvailableTests.mjs index ad95218dc2..ba89422879 100644 --- a/services/web/test/acceptance/src/AdminPrivilegeAvailableTests.mjs +++ b/services/web/test/acceptance/src/AdminPrivilegeAvailableTests.mjs @@ -1,8 +1,9 @@ import Settings from '@overleaf/settings' import { expect } from 'chai' import UserHelper from './helpers/User.mjs' -import { getSafeAdminDomainRedirect } from '../../../app/src/Features/Helpers/UrlHelper.js' +import UrlHelper from '../../../app/src/Features/Helpers/UrlHelper.mjs' +const { getSafeAdminDomainRedirect } = UrlHelper const User = UserHelper.promises describe('AdminPrivilegeAvailable', function () { diff --git a/services/web/test/acceptance/src/ClearSessionsSetMustReconfirmTests.mjs b/services/web/test/acceptance/src/ClearSessionsSetMustReconfirmTests.mjs index 93269c800d..1070bad11b 100644 --- a/services/web/test/acceptance/src/ClearSessionsSetMustReconfirmTests.mjs +++ b/services/web/test/acceptance/src/ClearSessionsSetMustReconfirmTests.mjs @@ -5,7 +5,7 @@ import logger from '@overleaf/logger' import { ObjectId, db } from '../../../app/src/infrastructure/mongodb.js' import fs from 'node:fs/promises' import UserHelper from './helpers/User.mjs' -import UserGetter from '../../../app/src/Features/User/UserGetter.js' +import UserGetter from '../../../app/src/Features/User/UserGetter.mjs' const User = UserHelper.promises const TEST_FILE_PATH = '/tmp/test-users.txt' diff --git a/services/web/test/acceptance/src/CollectPayPalPastDueInvoiceTest.mjs b/services/web/test/acceptance/src/CollectPayPalPastDueInvoiceTest.mjs index 6e44f0e041..6eb9e240be 100644 --- a/services/web/test/acceptance/src/CollectPayPalPastDueInvoiceTest.mjs +++ b/services/web/test/acceptance/src/CollectPayPalPastDueInvoiceTest.mjs @@ -3,7 +3,7 @@ import chai, { expect } from 'chai' import chaiAsPromised from 'chai-as-promised' import sinonChai from 'sinon-chai' import { collectPastDueInvoices } from '../../../scripts/recurly/collect_paypal_past_due_invoice.mjs' -import RecurlyWrapper from '../../../app/src/Features/Subscription/RecurlyWrapper.js' +import RecurlyWrapper from '../../../app/src/Features/Subscription/RecurlyWrapper.mjs' import OError from '@overleaf/o-error' chai.use(chaiAsPromised) diff --git a/services/web/test/acceptance/src/ProjectInviteTests.mjs b/services/web/test/acceptance/src/ProjectInviteTests.mjs index 1eb9090436..0debf26169 100644 --- a/services/web/test/acceptance/src/ProjectInviteTests.mjs +++ b/services/web/test/acceptance/src/ProjectInviteTests.mjs @@ -3,7 +3,7 @@ import Async from 'async' import User from './helpers/User.mjs' import settings from '@overleaf/settings' import CollaboratorsEmailHandler from '../../../app/src/Features/Collaborators/CollaboratorsEmailHandler.mjs' -import CollaboratorsInviteHelper from '../../../app/src/Features/Collaborators/CollaboratorsInviteHelper.js' +import CollaboratorsInviteHelper from '../../../app/src/Features/Collaborators/CollaboratorsInviteHelper.mjs' import Features from '../../../app/src/infrastructure/Features.js' import sinon from 'sinon' diff --git a/services/web/test/acceptance/src/SessionTests.mjs b/services/web/test/acceptance/src/SessionTests.mjs index 3a8cfb01eb..9a265020db 100644 --- a/services/web/test/acceptance/src/SessionTests.mjs +++ b/services/web/test/acceptance/src/SessionTests.mjs @@ -2,7 +2,7 @@ import { expect } from 'chai' import async from 'async' import UserHelper from './helpers/User.mjs' import redis from './helpers/redis.mjs' -import UserSessionsRedis from '../../../app/src/Features/User/UserSessionsRedis.js' +import UserSessionsRedis from '../../../app/src/Features/User/UserSessionsRedis.mjs' const rclient = UserSessionsRedis.client() describe('Sessions', function () { diff --git a/services/web/test/acceptance/src/UserHelperTests.mjs b/services/web/test/acceptance/src/UserHelperTests.mjs index bde8429622..ab229133b6 100644 --- a/services/web/test/acceptance/src/UserHelperTests.mjs +++ b/services/web/test/acceptance/src/UserHelperTests.mjs @@ -1,4 +1,4 @@ -import AuthenticationManager from '../../../app/src/Features/Authentication/AuthenticationManager.js' +import AuthenticationManager from '../../../app/src/Features/Authentication/AuthenticationManager.mjs' import UserHelper from './helpers/UserHelper.mjs' import Features from '../../../app/src/infrastructure/Features.js' import { expect } from 'chai' diff --git a/services/web/test/acceptance/src/UserMembershipAuthorizationTests.mjs b/services/web/test/acceptance/src/UserMembershipAuthorizationTests.mjs index a5f659ce4a..994cfbe455 100644 --- a/services/web/test/acceptance/src/UserMembershipAuthorizationTests.mjs +++ b/services/web/test/acceptance/src/UserMembershipAuthorizationTests.mjs @@ -5,7 +5,7 @@ import Institution from './helpers/Institution.mjs' import Subscription from './helpers/Subscription.mjs' import Publisher from './helpers/Publisher.mjs' import sinon from 'sinon' -import RecurlyClient from '../../../app/src/Features/Subscription/RecurlyClient.js' +import RecurlyClient from '../../../app/src/Features/Subscription/RecurlyClient.mjs' describe('UserMembershipAuthorization', function () { beforeEach(function (done) { diff --git a/services/web/test/acceptance/src/helpers/DeletedSubscription.mjs b/services/web/test/acceptance/src/helpers/DeletedSubscription.mjs index 0ea1148b56..3d64877cec 100644 --- a/services/web/test/acceptance/src/helpers/DeletedSubscription.mjs +++ b/services/web/test/acceptance/src/helpers/DeletedSubscription.mjs @@ -1,6 +1,6 @@ import { expect } from 'chai' import MockSubscription from './Subscription.mjs' -import SubscriptionUpdater from '../../../../app/src/Features/Subscription/SubscriptionUpdater.js' +import SubscriptionUpdater from '../../../../app/src/Features/Subscription/SubscriptionUpdater.mjs' import { Subscription as SubscriptionModel } from '../../../../app/src/models/Subscription.js' import { DeletedSubscription as DeletedSubscriptionModel } from '../../../../app/src/models/DeletedSubscription.js' import { promisifyClass } from '@overleaf/promise-utils' diff --git a/services/web/test/acceptance/src/helpers/InitApp.mjs b/services/web/test/acceptance/src/helpers/InitApp.mjs index ca8567cef4..b2544a43cf 100644 --- a/services/web/test/acceptance/src/helpers/InitApp.mjs +++ b/services/web/test/acceptance/src/helpers/InitApp.mjs @@ -7,8 +7,8 @@ import MockReCAPTCHAApi from '../mocks/MockReCaptchaApi.mjs' import { gracefulShutdown } from '../../../../app/src/infrastructure/GracefulShutdown.js' import Server from '../../../../app/src/infrastructure/Server.mjs' import { injectRouteAfter } from './injectRoute.mjs' -import SplitTestHandler from '../../../../app/src/Features/SplitTests/SplitTestHandler.js' -import SplitTestSessionHandler from '../../../../app/src/Features/SplitTests/SplitTestSessionHandler.js' +import SplitTestHandler from '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs' +import SplitTestSessionHandler from '../../../../app/src/Features/SplitTests/SplitTestSessionHandler.mjs' import Modules from '../../../../app/src/infrastructure/Modules.js' const app = Server.app diff --git a/services/web/test/acceptance/src/helpers/RecurlySubscription.mjs b/services/web/test/acceptance/src/helpers/RecurlySubscription.mjs index 09340451be..87f108c9e8 100644 --- a/services/web/test/acceptance/src/helpers/RecurlySubscription.mjs +++ b/services/web/test/acceptance/src/helpers/RecurlySubscription.mjs @@ -1,7 +1,7 @@ import mongodb from 'mongodb-legacy' import Subscription from './Subscription.mjs' import MockRecurlyApiClass from '../mocks/MockRecurlyApi.mjs' -import RecurlyWrapper from '../../../../app/src/Features/Subscription/RecurlyWrapper.js' +import RecurlyWrapper from '../../../../app/src/Features/Subscription/RecurlyWrapper.mjs' import { promisifyClass } from '@overleaf/promise-utils' const { ObjectId } = mongodb diff --git a/services/web/test/acceptance/src/helpers/Subscription.mjs b/services/web/test/acceptance/src/helpers/Subscription.mjs index 4187b79bfa..7671056b8b 100644 --- a/services/web/test/acceptance/src/helpers/Subscription.mjs +++ b/services/web/test/acceptance/src/helpers/Subscription.mjs @@ -1,7 +1,7 @@ import { db, ObjectId } from '../../../../app/src/infrastructure/mongodb.js' import { expect } from 'chai' import { callbackifyClass } from '@overleaf/promise-utils' -import SubscriptionUpdater from '../../../../app/src/Features/Subscription/SubscriptionUpdater.js' +import SubscriptionUpdater from '../../../../app/src/Features/Subscription/SubscriptionUpdater.mjs' import PermissionsManager from '../../../../app/src/Features/Authorization/PermissionsManager.mjs' import SSOConfigManager from '../../../../modules/group-settings/app/src/sso/SSOConfigManager.mjs' import { Subscription as SubscriptionModel } from '../../../../app/src/models/Subscription.js' diff --git a/services/web/test/acceptance/src/helpers/User.mjs b/services/web/test/acceptance/src/helpers/User.mjs index 41827f16f0..48ba98c9b5 100644 --- a/services/web/test/acceptance/src/helpers/User.mjs +++ b/services/web/test/acceptance/src/helpers/User.mjs @@ -3,8 +3,8 @@ import request from './request.js' import settings from '@overleaf/settings' import { db, ObjectId } from '../../../../app/src/infrastructure/mongodb.js' import { User as UserModel } from '../../../../app/src/models/User.js' -import UserUpdater from '../../../../app/src/Features/User/UserUpdater.js' -import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.js' +import UserUpdater from '../../../../app/src/Features/User/UserUpdater.mjs' +import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.mjs' import { promisifyClass } from '@overleaf/promise-utils' import fs from 'node:fs' import Path from 'node:path' diff --git a/services/web/test/acceptance/src/helpers/UserHelper.mjs b/services/web/test/acceptance/src/helpers/UserHelper.mjs index b60f25f67c..b218554da0 100644 --- a/services/web/test/acceptance/src/helpers/UserHelper.mjs +++ b/services/web/test/acceptance/src/helpers/UserHelper.mjs @@ -1,10 +1,10 @@ import { CookieJar } from 'tough-cookie' -import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.js' +import AuthenticationManager from '../../../../app/src/Features/Authentication/AuthenticationManager.mjs' import Settings from '@overleaf/settings' -import InstitutionsAPI from '../../../../app/src/Features/Institutions/InstitutionsAPI.js' +import InstitutionsAPI from '../../../../app/src/Features/Institutions/InstitutionsAPI.mjs' import UserCreator from '../../../../app/src/Features/User/UserCreator.mjs' -import UserGetter from '../../../../app/src/Features/User/UserGetter.js' -import UserUpdater from '../../../../app/src/Features/User/UserUpdater.js' +import UserGetter from '../../../../app/src/Features/User/UserGetter.mjs' +import UserUpdater from '../../../../app/src/Features/User/UserUpdater.mjs' import moment from 'moment' import fetch from 'node-fetch' import mongodb from 'mongodb-legacy' diff --git a/services/web/test/acceptance/src/helpers/groupSSO.mjs b/services/web/test/acceptance/src/helpers/groupSSO.mjs index fd92fcebda..c908773ed6 100644 --- a/services/web/test/acceptance/src/helpers/groupSSO.mjs +++ b/services/web/test/acceptance/src/helpers/groupSSO.mjs @@ -7,7 +7,7 @@ import UserHelper from './UserHelper.mjs' import SAMLHelper from './SAMLHelper.mjs' import Settings from '@overleaf/settings' import GroupUtils from '../../../../app/src/Features/Subscription/GroupUtils.mjs' -import UserGetter from '../../../../app/src/Features/User/UserGetter.js' +import UserGetter from '../../../../app/src/Features/User/UserGetter.mjs' import { fileURLToPath } from 'node:url' import { Subscription as SubscriptionModel } from '../../../../app/src/models/Subscription.js' diff --git a/services/web/test/acceptance/src/helpers/redis.mjs b/services/web/test/acceptance/src/helpers/redis.mjs index 2f8575fda9..3070aceaed 100644 --- a/services/web/test/acceptance/src/helpers/redis.mjs +++ b/services/web/test/acceptance/src/helpers/redis.mjs @@ -1,8 +1,3 @@ -/* eslint-disable - n/handle-callback-err, - max-len, - no-unused-vars, -*/ // TODO: This file was created by bulk-decaffeinate. // Fix any style issues and re-enable lint. /* @@ -11,11 +6,8 @@ * DS207: Consider shorter variations of null checks * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md */ -import Settings from '@overleaf/settings' - -import logger from '@overleaf/logger' import Async from 'async' -import UserSessionsRedis from '../../../../app/src/Features/User/UserSessionsRedis.js' +import UserSessionsRedis from '../../../../app/src/Features/User/UserSessionsRedis.mjs' // rclient = redis.createClient(Settings.redis.web) const rclient = UserSessionsRedis.client() @@ -44,7 +36,7 @@ export default { return callback(null) } const actions = sessionKeys.map(k => cb => rclient.del(k, err => cb(err))) - return Async.series(actions, (err, results) => + return Async.series(actions, () => rclient.srem(sessionSetKey, sessionKeys, err => { if (err) { return callback(err) diff --git a/services/web/test/unit/src/Analytics/AnalyticsController.test.mjs b/services/web/test/unit/src/Analytics/AnalyticsController.test.mjs index 84aee5f2f5..c31900112b 100644 --- a/services/web/test/unit/src/Analytics/AnalyticsController.test.mjs +++ b/services/web/test/unit/src/Analytics/AnalyticsController.test.mjs @@ -20,14 +20,14 @@ describe('AnalyticsController', function () { } vi.doMock( - '../../../../app/src/Features/Analytics/AnalyticsManager.js', + '../../../../app/src/Features/Analytics/AnalyticsManager.mjs', () => ({ default: ctx.AnalyticsManager, }) ) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) diff --git a/services/web/test/unit/src/Analytics/AnalyticsUTMTrackingMiddleware.test.mjs b/services/web/test/unit/src/Analytics/AnalyticsUTMTrackingMiddleware.test.mjs index 6c118a261d..eeed2f2850 100644 --- a/services/web/test/unit/src/Analytics/AnalyticsUTMTrackingMiddleware.test.mjs +++ b/services/web/test/unit/src/Analytics/AnalyticsUTMTrackingMiddleware.test.mjs @@ -24,7 +24,7 @@ describe('AnalyticsUTMTrackingMiddleware', function () { } vi.doMock( - '../../../../app/src/Features/Analytics/AnalyticsManager.js', + '../../../../app/src/Features/Analytics/AnalyticsManager.mjs', () => ({ default: (ctx.AnalyticsManager = { recordEventForSession: sinon.stub().resolves(), diff --git a/services/web/test/unit/src/Authorization/AuthorizationManager.test.mjs b/services/web/test/unit/src/Authorization/AuthorizationManager.test.mjs index aff0849083..9b80678e30 100644 --- a/services/web/test/unit/src/Authorization/AuthorizationManager.test.mjs +++ b/services/web/test/unit/src/Authorization/AuthorizationManager.test.mjs @@ -2,7 +2,7 @@ import { beforeEach, describe, it, vi, expect } from 'vitest' import sinon from 'sinon' import Errors from '../../../../app/src/Features/Errors/Errors.js' import PrivilegeLevels from '../../../../app/src/Features/Authorization/PrivilegeLevels.js' -import PublicAccessLevels from '../../../../app/src/Features/Authorization/PublicAccessLevels.js' +import PublicAccessLevels from '../../../../app/src/Features/Authorization/PublicAccessLevels.mjs' import mongodb from 'mongodb-legacy' const modulePath = '../../../../app/src/Features/Authorization/AuthorizationManager.mjs' diff --git a/services/web/test/unit/src/Chat/ChatController.test.mjs b/services/web/test/unit/src/Chat/ChatController.test.mjs index f7ceee52f0..9a66ae0243 100644 --- a/services/web/test/unit/src/Chat/ChatController.test.mjs +++ b/services/web/test/unit/src/Chat/ChatController.test.mjs @@ -29,7 +29,7 @@ describe('ChatController', function () { default: ctx.settings, })) - vi.doMock('../../../../app/src/Features/Chat/ChatApiHandler.js', () => ({ + vi.doMock('../../../../app/src/Features/Chat/ChatApiHandler.mjs', () => ({ default: ctx.ChatApiHandler, })) @@ -38,14 +38,14 @@ describe('ChatController', function () { })) vi.doMock( - '../../../../app/src/Features/Editor/EditorRealTimeController.js', + '../../../../app/src/Features/Editor/EditorRealTimeController.mjs', () => ({ default: ctx.EditorRealTimeController, }) ) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) diff --git a/services/web/test/unit/src/Collaborators/CollaboratorsController.test.mjs b/services/web/test/unit/src/Collaborators/CollaboratorsController.test.mjs index c027b0b834..471092252a 100644 --- a/services/web/test/unit/src/Collaborators/CollaboratorsController.test.mjs +++ b/services/web/test/unit/src/Collaborators/CollaboratorsController.test.mjs @@ -116,25 +116,25 @@ describe('CollaboratorsController', function () { ) vi.doMock( - '../../../../app/src/Features/Errors/HttpErrorHandler.js', + '../../../../app/src/Features/Errors/HttpErrorHandler.mjs', () => ({ default: ctx.HttpErrorHandler, }) ) - vi.doMock('../../../../app/src/Features/Tags/TagsHandler.js', () => ({ + vi.doMock('../../../../app/src/Features/Tags/TagsHandler.mjs', () => ({ default: ctx.TagsHandler, })) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) ) vi.doMock( - '../../../../app/src/Features/TokenAccess/TokenAccessHandler.js', + '../../../../app/src/Features/TokenAccess/TokenAccessHandler.mjs', () => ({ default: ctx.TokenAccessHandler, }) @@ -152,7 +152,7 @@ describe('CollaboratorsController', function () { })) vi.doMock( - '../../../../app/src/Features/SplitTests/SplitTestHandler.js', + '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs', () => ({ default: ctx.SplitTestHandler, }) diff --git a/services/web/test/unit/src/Collaborators/CollaboratorsInviteController.test.mjs b/services/web/test/unit/src/Collaborators/CollaboratorsInviteController.test.mjs index 6a04db90f5..2aaf02dbb5 100644 --- a/services/web/test/unit/src/Collaborators/CollaboratorsInviteController.test.mjs +++ b/services/web/test/unit/src/Collaborators/CollaboratorsInviteController.test.mjs @@ -143,7 +143,7 @@ describe('CollaboratorsInviteController', function () { }) ) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) @@ -162,28 +162,28 @@ describe('CollaboratorsInviteController', function () { ) vi.doMock( - '../../../../app/src/Features/Collaborators/CollaboratorsInviteGetter.js', + '../../../../app/src/Features/Collaborators/CollaboratorsInviteGetter.mjs', () => ({ default: ctx.CollaboratorsInviteGetter, }) ) vi.doMock( - '../../../../app/src/Features/Editor/EditorRealTimeController.js', + '../../../../app/src/Features/Editor/EditorRealTimeController.mjs', () => ({ default: ctx.EditorRealTimeController, }) ) vi.doMock( - '../../../../app/src/Features/Analytics/AnalyticsManager.js', + '../../../../app/src/Features/Analytics/AnalyticsManager.mjs', () => ({ default: ctx.AnalyticsManger, }) ) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) diff --git a/services/web/test/unit/src/Collaborators/CollaboratorsInviteHandler.test.mjs b/services/web/test/unit/src/Collaborators/CollaboratorsInviteHandler.test.mjs index fdd402d0f2..660994f2f8 100644 --- a/services/web/test/unit/src/Collaborators/CollaboratorsInviteHandler.test.mjs +++ b/services/web/test/unit/src/Collaborators/CollaboratorsInviteHandler.test.mjs @@ -104,7 +104,7 @@ describe('CollaboratorsInviteHandler', function () { }) ) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) @@ -113,14 +113,14 @@ describe('CollaboratorsInviteHandler', function () { })) vi.doMock( - '../../../../app/src/Features/Notifications/NotificationsBuilder.js', + '../../../../app/src/Features/Notifications/NotificationsBuilder.mjs', () => ({ default: ctx.NotificationsBuilder, }) ) vi.doMock( - '../../../../app/src/Features/Collaborators/CollaboratorsInviteHelper.js', + '../../../../app/src/Features/Collaborators/CollaboratorsInviteHelper.mjs', () => ({ default: ctx.CollaboratorsInviteHelper, }) @@ -134,7 +134,7 @@ describe('CollaboratorsInviteHandler', function () { ) vi.doMock( - '../../../../app/src/Features/SplitTests/SplitTestHandler.js', + '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs', () => ({ default: ctx.SplitTestHandler, }) diff --git a/services/web/test/unit/src/Collaborators/OwnershipTransferHandler.test.mjs b/services/web/test/unit/src/Collaborators/OwnershipTransferHandler.test.mjs index 1a2a554839..f526aaa29b 100644 --- a/services/web/test/unit/src/Collaborators/OwnershipTransferHandler.test.mjs +++ b/services/web/test/unit/src/Collaborators/OwnershipTransferHandler.test.mjs @@ -93,11 +93,11 @@ describe('OwnershipTransferHandler', function () { Project: ctx.ProjectModel, })) - vi.doMock('../../../../app/src/Features/Tags/TagsHandler.js', () => ({ + vi.doMock('../../../../app/src/Features/Tags/TagsHandler.mjs', () => ({ default: ctx.TagsHandler, })) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) @@ -115,7 +115,7 @@ describe('OwnershipTransferHandler', function () { }) ) - vi.doMock('../../../../app/src/Features/Email/EmailHandler.js', () => ({ + vi.doMock('../../../../app/src/Features/Email/EmailHandler.mjs', () => ({ default: ctx.EmailHandler, })) diff --git a/services/web/test/unit/src/Editor/EditorHttpController.test.mjs b/services/web/test/unit/src/Editor/EditorHttpController.test.mjs index d52d284dd7..eb225a84a4 100644 --- a/services/web/test/unit/src/Editor/EditorHttpController.test.mjs +++ b/services/web/test/unit/src/Editor/EditorHttpController.test.mjs @@ -184,7 +184,7 @@ describe('EditorHttpController', function () { }) ) vi.doMock( - '../../../../app/src/Features/Project/ProjectEditorHandler.js', + '../../../../app/src/Features/Project/ProjectEditorHandler.mjs', () => ({ default: ctx.ProjectEditorHandler, }) @@ -211,19 +211,19 @@ describe('EditorHttpController', function () { }) ) vi.doMock( - '../../../../app/src/Features/Collaborators/CollaboratorsInviteGetter.js', + '../../../../app/src/Features/Collaborators/CollaboratorsInviteGetter.mjs', () => ({ default: ctx.CollaboratorsInviteGetter, }) ) vi.doMock( - '../../../../app/src/Features/TokenAccess/TokenAccessHandler.js', + '../../../../app/src/Features/TokenAccess/TokenAccessHandler.mjs', () => ({ default: ctx.TokenAccessHandler, }) ) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) @@ -238,19 +238,19 @@ describe('EditorHttpController', function () { }) ) vi.doMock( - '../../../../app/src/Features/Docstore/DocstoreManager.js', + '../../../../app/src/Features/Docstore/DocstoreManager.mjs', () => ({ default: ctx.DocstoreManager, }) ) vi.doMock( - '../../../../app/src/Features/Errors/HttpErrorHandler.js', + '../../../../app/src/Features/Errors/HttpErrorHandler.mjs', () => ({ default: ctx.HttpErrorHandler, }) ) vi.doMock( - '../../../../app/src/Features/SplitTests/SplitTestHandler.js', + '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs', () => ({ default: ctx.SplitTestHandler, }) @@ -261,7 +261,7 @@ describe('EditorHttpController', function () { default: {}, }) ) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) diff --git a/services/web/test/unit/src/Errors/HttpErrorHandler.test.mjs b/services/web/test/unit/src/Errors/HttpErrorHandler.test.mjs index 2bd9dbbc59..2fca4d4216 100644 --- a/services/web/test/unit/src/Errors/HttpErrorHandler.test.mjs +++ b/services/web/test/unit/src/Errors/HttpErrorHandler.test.mjs @@ -1,7 +1,7 @@ import { vi, expect } from 'vitest' import MockResponse from '../helpers/MockResponse.js' import MockRequest from '../helpers/MockRequest.js' -const modulePath = '../../../../app/src/Features/Errors/HttpErrorHandler.js' +const modulePath = '../../../../app/src/Features/Errors/HttpErrorHandler.mjs' describe('HttpErrorHandler', function () { beforeEach(async function (ctx) { diff --git a/services/web/test/unit/src/History/HistoryController.test.mjs b/services/web/test/unit/src/History/HistoryController.test.mjs index f2c6d30de8..ce826d1c0a 100644 --- a/services/web/test/unit/src/History/HistoryController.test.mjs +++ b/services/web/test/unit/src/History/HistoryController.test.mjs @@ -76,7 +76,7 @@ describe('HistoryController', function () { })) vi.doMock( - '../../../../app/src/Features/Authentication/SessionManager.js', + '../../../../app/src/Features/Authentication/SessionManager.mjs', () => ({ default: ctx.SessionManager, }) @@ -103,7 +103,7 @@ describe('HistoryController', function () { }) ) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: (ctx.UserGetter = {}), })) diff --git a/services/web/test/unit/src/Project/ProjectDetailsHandler.test.mjs b/services/web/test/unit/src/Project/ProjectDetailsHandler.test.mjs index 0c93d396d2..256f7f7c04 100644 --- a/services/web/test/unit/src/Project/ProjectDetailsHandler.test.mjs +++ b/services/web/test/unit/src/Project/ProjectDetailsHandler.test.mjs @@ -2,7 +2,7 @@ import { vi, expect } from 'vitest' import sinon from 'sinon' import mongodb from 'mongodb-legacy' import Errors from '../../../../app/src/Features/Errors/Errors.js' -import ProjectHelper from '../../../../app/src/Features/Project/ProjectHelper.js' +import ProjectHelper from '../../../../app/src/Features/Project/ProjectHelper.mjs' const { ObjectId } = mongodb diff --git a/services/web/test/unit/src/Referal/ReferalAllocator.test.mjs b/services/web/test/unit/src/Referal/ReferalAllocator.test.mjs index 091f86ff1f..ae5e9bb27f 100644 --- a/services/web/test/unit/src/Referal/ReferalAllocator.test.mjs +++ b/services/web/test/unit/src/Referal/ReferalAllocator.test.mjs @@ -10,7 +10,7 @@ describe('ReferalAllocator', function () { })) vi.doMock( - '../../../../app/src/Features/Subscription/FeaturesUpdater.js', + '../../../../app/src/Features/Subscription/FeaturesUpdater.mjs', () => ({ default: (ctx.FeaturesUpdater = {}), }) diff --git a/services/web/test/unit/src/SplitTests/SplitTestMiddleware.test.mjs b/services/web/test/unit/src/SplitTests/SplitTestMiddleware.test.mjs index a69991137c..dceecd664e 100644 --- a/services/web/test/unit/src/SplitTests/SplitTestMiddleware.test.mjs +++ b/services/web/test/unit/src/SplitTests/SplitTestMiddleware.test.mjs @@ -8,7 +8,7 @@ const modulePath = '../../../../app/src/Features/SplitTests/SplitTestMiddleware' describe('SplitTestMiddleware', function () { beforeEach(async function (ctx) { vi.doMock( - '../../../../app/src/Features/SplitTests/SplitTestHandler.js', + '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs', () => ({ default: (ctx.SplitTestHandler = { promises: { diff --git a/services/web/test/unit/src/Subscription/RecurlyClient.test.mjs b/services/web/test/unit/src/Subscription/RecurlyClient.test.mjs index 3c6d50f149..ec538a8c0f 100644 --- a/services/web/test/unit/src/Subscription/RecurlyClient.test.mjs +++ b/services/web/test/unit/src/Subscription/RecurlyClient.test.mjs @@ -1,16 +1,16 @@ import { vi, expect } from 'vitest' import sinon from 'sinon' import recurly from 'recurly' +import PaymentProviderEntities from '../../../../app/src/Features/Subscription/PaymentProviderEntities.mjs' -import { +const { PaymentProviderSubscription, PaymentProviderSubscriptionChangeRequest, PaymentProviderSubscriptionUpdateRequest, PaymentProviderSubscriptionAddOnUpdate, PaymentProviderAccount, PaymentProviderCoupon, -} from '../../../../app/src/Features/Subscription/PaymentProviderEntities.js' - +} = PaymentProviderEntities const MODULE_PATH = '../../../../app/src/Features/Subscription/RecurlyClient' describe('RecurlyClient', function () { diff --git a/services/web/test/unit/src/Subscription/SubscriptionGroupHandler.test.mjs b/services/web/test/unit/src/Subscription/SubscriptionGroupHandler.test.mjs index a599404093..70e29bdc29 100644 --- a/services/web/test/unit/src/Subscription/SubscriptionGroupHandler.test.mjs +++ b/services/web/test/unit/src/Subscription/SubscriptionGroupHandler.test.mjs @@ -217,7 +217,7 @@ describe('SubscriptionGroupHandler', function () { vi.importActual('../../../../app/src/Features/Errors/Errors.js') ) vi.doMock( - '../../../../app/src/Features/Subscription/SubscriptionUpdater.js', + '../../../../app/src/Features/Subscription/SubscriptionUpdater.mjs', () => ({ default: ctx.SubscriptionUpdater, }) diff --git a/services/web/test/unit/src/Subscription/SubscriptionHandler.test.mjs b/services/web/test/unit/src/Subscription/SubscriptionHandler.test.mjs index 1dbe825783..7f0290f4a0 100644 --- a/services/web/test/unit/src/Subscription/SubscriptionHandler.test.mjs +++ b/services/web/test/unit/src/Subscription/SubscriptionHandler.test.mjs @@ -1,8 +1,9 @@ import { expect, vi } from 'vitest' import sinon from 'sinon' -import { PaymentProviderSubscription } from '../../../../app/src/Features/Subscription/PaymentProviderEntities.js' +import PaymentProviderEntities from '../../../../app/src/Features/Subscription/PaymentProviderEntities.mjs' import SubscriptionHelper from '../../../../app/src/Features/Subscription/SubscriptionHelper.js' +const { PaymentProviderSubscription } = PaymentProviderEntities const MODULE_PATH = '../../../../app/src/Features/Subscription/SubscriptionHandler' diff --git a/services/web/test/unit/src/Subscription/SubscriptionViewModelBuilder.test.mjs b/services/web/test/unit/src/Subscription/SubscriptionViewModelBuilder.test.mjs index f89e6ddbc8..90737cf3df 100644 --- a/services/web/test/unit/src/Subscription/SubscriptionViewModelBuilder.test.mjs +++ b/services/web/test/unit/src/Subscription/SubscriptionViewModelBuilder.test.mjs @@ -1,13 +1,14 @@ import { vi, assert } from 'vitest' import sinon from 'sinon' -import { +import PaymentProviderEntities from '../../../../app/src/Features/Subscription/PaymentProviderEntities.mjs' +import SubscriptionHelper from '../../../../app/src/Features/Subscription/SubscriptionHelper.js' + +const { PaymentProviderAccount, PaymentProviderSubscription, PaymentProviderSubscriptionAddOn, PaymentProviderSubscriptionChange, -} from '../../../../app/src/Features/Subscription/PaymentProviderEntities.js' -import SubscriptionHelper from '../../../../app/src/Features/Subscription/SubscriptionHelper.js' - +} = PaymentProviderEntities const modulePath = '../../../../app/src/Features/Subscription/SubscriptionViewModelBuilder.mjs' diff --git a/services/web/test/unit/src/Templates/TemplatesController.test.mjs b/services/web/test/unit/src/Templates/TemplatesController.test.mjs index e4323ab1de..5d354718b5 100644 --- a/services/web/test/unit/src/Templates/TemplatesController.test.mjs +++ b/services/web/test/unit/src/Templates/TemplatesController.test.mjs @@ -1,6 +1,6 @@ import { vi, expect } from 'vitest' import sinon from 'sinon' -import ProjectHelper from '../../../../app/src/Features/Project/ProjectHelper.js' +import ProjectHelper from '../../../../app/src/Features/Project/ProjectHelper.mjs' const modulePath = '../../../../app/src/Features/Templates/TemplatesController.mjs' diff --git a/services/web/test/unit/src/ThirdPartyDataStore/TpdsUpdateSender.test.mjs b/services/web/test/unit/src/ThirdPartyDataStore/TpdsUpdateSender.test.mjs index 5505ab95b5..5537a4dc24 100644 --- a/services/web/test/unit/src/ThirdPartyDataStore/TpdsUpdateSender.test.mjs +++ b/services/web/test/unit/src/ThirdPartyDataStore/TpdsUpdateSender.test.mjs @@ -93,7 +93,7 @@ describe('TpdsUpdateSender', function () { }) ) - vi.doMock('../../../../app/src/Features/User/UserGetter.js', () => ({ + vi.doMock('../../../../app/src/Features/User/UserGetter.mjs', () => ({ default: ctx.UserGetter, })) diff --git a/services/web/test/unit/src/TokenAccess/TokenAccessController.test.mjs b/services/web/test/unit/src/TokenAccess/TokenAccessController.test.mjs index 7ac267b64f..117a6b0b14 100644 --- a/services/web/test/unit/src/TokenAccess/TokenAccessController.test.mjs +++ b/services/web/test/unit/src/TokenAccess/TokenAccessController.test.mjs @@ -4,8 +4,9 @@ import mongodb from 'mongodb-legacy' import MockRequest from '../helpers/MockRequest.js' import MockResponse from '../helpers/MockResponse.js' import PrivilegeLevels from '../../../../app/src/Features/Authorization/PrivilegeLevels.js' -import { getSafeRedirectPath } from '../../../../app/src/Features/Helpers/UrlHelper.js' +import UrlHelper from '../../../../app/src/Features/Helpers/UrlHelper.mjs' +const { getSafeRedirectPath } = UrlHelper const ObjectId = mongodb.ObjectId const MODULE_PATH = diff --git a/services/web/test/unit/src/UserMembership/UserMembershipController.test.mjs b/services/web/test/unit/src/UserMembership/UserMembershipController.test.mjs index 4d7aae6336..7492df2e1a 100644 --- a/services/web/test/unit/src/UserMembership/UserMembershipController.test.mjs +++ b/services/web/test/unit/src/UserMembership/UserMembershipController.test.mjs @@ -1,7 +1,7 @@ import { expect, vi, describe, it, beforeEach } from 'vitest' import MockRequest from '../helpers/MockRequestVitest.mjs' import MockResponse from '../helpers/MockResponseVitest.mjs' -import EntityConfigs from '../../../../app/src/Features/UserMembership/UserMembershipEntityConfigs.js' +import EntityConfigs from '../../../../app/src/Features/UserMembership/UserMembershipEntityConfigs.mjs' import Errors from '../../../../app/src/Features/Errors/Errors.js' import UserMembershipErrors from '../../../../app/src/Features/UserMembership/UserMembershipErrors.mjs' diff --git a/services/web/test/unit/src/UserMembership/UserMembershipHandler.test.mjs b/services/web/test/unit/src/UserMembership/UserMembershipHandler.test.mjs index 404a0ffeff..4ac56dc250 100644 --- a/services/web/test/unit/src/UserMembership/UserMembershipHandler.test.mjs +++ b/services/web/test/unit/src/UserMembership/UserMembershipHandler.test.mjs @@ -1,6 +1,6 @@ import { vi, expect } from 'vitest' import mongodb from 'mongodb-legacy' -import EntityConfigs from '../../../../app/src/Features/UserMembership/UserMembershipEntityConfigs.js' +import EntityConfigs from '../../../../app/src/Features/UserMembership/UserMembershipEntityConfigs.mjs' import UserMembershipErrors from '../../../../app/src/Features/UserMembership/UserMembershipErrors.mjs' const { ObjectId } = mongodb