2021-07-20 05:26:23 -04:00
|
|
|
const { merge } = require('@overleaf/settings/merge')
|
|
|
|
|
|
|
|
let features
|
|
|
|
|
2024-02-06 04:34:15 -05:00
|
|
|
const httpAuthUser = 'overleaf'
|
2021-07-20 05:26:23 -04:00
|
|
|
const httpAuthPass = 'password'
|
|
|
|
const httpAuthUsers = {}
|
|
|
|
httpAuthUsers[httpAuthUser] = httpAuthPass
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
catchErrors: false,
|
|
|
|
clsiCookie: undefined,
|
|
|
|
|
|
|
|
cacheStaticAssets: true,
|
|
|
|
|
|
|
|
httpAuthUsers,
|
|
|
|
secureCookie: false,
|
|
|
|
security: {
|
|
|
|
sessionSecret: 'static-secret-for-tests',
|
|
|
|
},
|
2021-07-27 04:45:17 -04:00
|
|
|
adminDomains: process.env.ADMIN_DOMAINS
|
|
|
|
? JSON.parse(process.env.ADMIN_DOMAINS)
|
|
|
|
: ['example.com'],
|
2021-07-20 05:26:23 -04:00
|
|
|
|
|
|
|
statusPageUrl: 'status.example.com',
|
2023-01-04 06:14:32 -05:00
|
|
|
cdn: {
|
|
|
|
web: {
|
|
|
|
host: 'cdn.example.com',
|
|
|
|
},
|
|
|
|
},
|
2021-07-20 05:26:23 -04:00
|
|
|
|
2023-10-11 04:52:43 -04:00
|
|
|
mongo: {
|
|
|
|
options: {
|
|
|
|
family: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
2021-07-20 05:26:23 -04:00
|
|
|
apis: {
|
|
|
|
linkedUrlProxy: {
|
|
|
|
url: process.env.LINKED_URL_PROXY,
|
|
|
|
},
|
|
|
|
|
|
|
|
web: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23000',
|
2021-07-20 05:26:23 -04:00
|
|
|
user: httpAuthUser,
|
|
|
|
pass: httpAuthPass,
|
|
|
|
},
|
2022-01-19 05:41:24 -05:00
|
|
|
|
|
|
|
haveIBeenPwned: {
|
2022-02-24 09:43:37 -05:00
|
|
|
enabled: false,
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:1337',
|
2022-01-19 05:41:24 -05:00
|
|
|
},
|
2022-08-09 08:03:30 -04:00
|
|
|
documentupdater: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23003',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
spelling: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23005',
|
|
|
|
host: '127.0.0.1',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
docstore: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23016',
|
|
|
|
pubUrl: 'http://127.0.0.1:23016',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
chat: {
|
2024-04-25 08:56:00 -04:00
|
|
|
internal_url: 'http://127.0.0.1:23010',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
filestore: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23009',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
clsi: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23013',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
realTime: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23026',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
contacts: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23036',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
|
|
|
notifications: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23042',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
2023-01-20 06:06:26 -05:00
|
|
|
project_history: {
|
|
|
|
sendProjectStructureOps: true,
|
2024-04-25 08:56:00 -04:00
|
|
|
url: `http://127.0.0.1:23054`,
|
2023-01-20 06:06:26 -05:00
|
|
|
},
|
|
|
|
v1_history: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: `http://127.0.0.1:23100/api`,
|
2023-01-20 06:06:26 -05:00
|
|
|
user: 'overleaf',
|
|
|
|
pass: 'password',
|
|
|
|
},
|
2022-08-09 08:03:30 -04:00
|
|
|
webpack: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:23808',
|
2022-08-09 08:03:30 -04:00
|
|
|
},
|
2023-05-15 09:46:27 -04:00
|
|
|
gitBridge: {
|
2024-04-25 08:56:00 -04:00
|
|
|
url: 'http://127.0.0.1:28000',
|
2023-05-15 09:46:27 -04:00
|
|
|
},
|
2021-07-20 05:26:23 -04:00
|
|
|
},
|
|
|
|
|
|
|
|
features: (features = {
|
|
|
|
v1_free: {
|
|
|
|
collaborators: 1,
|
|
|
|
dropbox: false,
|
|
|
|
versioning: false,
|
|
|
|
github: true,
|
|
|
|
gitBridge: true,
|
|
|
|
templates: false,
|
|
|
|
references: false,
|
|
|
|
referencesSearch: false,
|
|
|
|
mendeley: true,
|
|
|
|
zotero: true,
|
|
|
|
compileTimeout: 60,
|
|
|
|
compileGroup: 'standard',
|
|
|
|
trackChanges: false,
|
2021-10-13 05:44:23 -04:00
|
|
|
symbolPalette: false,
|
2021-07-20 05:26:23 -04:00
|
|
|
},
|
|
|
|
personal: {
|
|
|
|
collaborators: 1,
|
|
|
|
dropbox: false,
|
|
|
|
versioning: false,
|
|
|
|
github: false,
|
|
|
|
gitBridge: false,
|
|
|
|
templates: false,
|
|
|
|
references: false,
|
|
|
|
referencesSearch: false,
|
|
|
|
mendeley: false,
|
|
|
|
zotero: false,
|
|
|
|
compileTimeout: 60,
|
|
|
|
compileGroup: 'standard',
|
|
|
|
trackChanges: false,
|
2021-10-13 05:44:23 -04:00
|
|
|
symbolPalette: false,
|
2021-07-20 05:26:23 -04:00
|
|
|
},
|
|
|
|
collaborator: {
|
|
|
|
collaborators: 10,
|
|
|
|
dropbox: true,
|
|
|
|
versioning: true,
|
|
|
|
github: true,
|
|
|
|
gitBridge: true,
|
|
|
|
templates: true,
|
|
|
|
references: true,
|
|
|
|
referencesSearch: true,
|
|
|
|
mendeley: true,
|
|
|
|
zotero: true,
|
|
|
|
compileTimeout: 180,
|
|
|
|
compileGroup: 'priority',
|
|
|
|
trackChanges: true,
|
2021-10-13 05:44:23 -04:00
|
|
|
symbolPalette: true,
|
2021-07-20 05:26:23 -04:00
|
|
|
},
|
|
|
|
professional: {
|
|
|
|
collaborators: -1,
|
|
|
|
dropbox: true,
|
|
|
|
versioning: true,
|
|
|
|
github: true,
|
|
|
|
gitBridge: true,
|
|
|
|
templates: true,
|
|
|
|
references: true,
|
|
|
|
referencesSearch: true,
|
|
|
|
mendeley: true,
|
|
|
|
zotero: true,
|
|
|
|
compileTimeout: 180,
|
|
|
|
compileGroup: 'priority',
|
|
|
|
trackChanges: true,
|
2021-10-13 05:44:23 -04:00
|
|
|
symbolPalette: true,
|
2021-07-20 05:26:23 -04:00
|
|
|
},
|
|
|
|
}),
|
|
|
|
|
|
|
|
defaultFeatures: features.personal,
|
|
|
|
defaultPlanCode: 'personal',
|
|
|
|
institutionPlanCode: 'professional',
|
|
|
|
|
|
|
|
plans: [
|
|
|
|
{
|
|
|
|
planCode: 'v1_free',
|
|
|
|
name: 'V1 Free',
|
2022-01-12 04:39:56 -05:00
|
|
|
price_in_cents: 0,
|
2021-07-20 05:26:23 -04:00
|
|
|
features: features.v1_free,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
planCode: 'personal',
|
|
|
|
name: 'Personal',
|
2022-01-12 04:39:56 -05:00
|
|
|
price_in_cents: 0,
|
2021-07-20 05:26:23 -04:00
|
|
|
features: features.personal,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
planCode: 'collaborator',
|
|
|
|
name: 'Collaborator',
|
2022-01-12 04:39:56 -05:00
|
|
|
price_in_cents: 1500,
|
2021-07-20 05:26:23 -04:00
|
|
|
features: features.collaborator,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
planCode: 'professional',
|
|
|
|
name: 'Professional',
|
2022-01-12 04:39:56 -05:00
|
|
|
price_in_cents: 3000,
|
2021-07-20 05:26:23 -04:00
|
|
|
features: features.professional,
|
|
|
|
},
|
|
|
|
],
|
|
|
|
|
|
|
|
bonus_features: {
|
|
|
|
1: {
|
|
|
|
collaborators: 2,
|
|
|
|
dropbox: false,
|
|
|
|
versioning: false,
|
|
|
|
},
|
|
|
|
3: {
|
|
|
|
collaborators: 4,
|
|
|
|
dropbox: false,
|
|
|
|
versioning: false,
|
|
|
|
},
|
|
|
|
6: {
|
|
|
|
collaborators: 4,
|
|
|
|
dropbox: true,
|
|
|
|
versioning: true,
|
|
|
|
},
|
|
|
|
9: {
|
|
|
|
collaborators: -1,
|
|
|
|
dropbox: true,
|
|
|
|
versioning: true,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
redirects: {
|
|
|
|
'/redirect/one': '/destination/one',
|
|
|
|
'/redirect/get_and_post': {
|
|
|
|
methods: ['get', 'post'],
|
|
|
|
url: '/destination/get_and_post',
|
|
|
|
},
|
|
|
|
'/redirect/base_url': {
|
|
|
|
baseUrl: 'https://example.com',
|
|
|
|
url: '/destination/base_url',
|
|
|
|
},
|
|
|
|
'/redirect/params/:id': {
|
|
|
|
url(params) {
|
|
|
|
return `/destination/${params.id}/params`
|
|
|
|
},
|
|
|
|
},
|
|
|
|
'/redirect/qs': '/destination/qs',
|
|
|
|
'/docs_v1': {
|
|
|
|
url: '/docs',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
reconfirmNotificationDays: 14,
|
|
|
|
|
2022-01-26 06:15:19 -05:00
|
|
|
recaptcha: {
|
|
|
|
siteKey: 'siteKey',
|
|
|
|
disabled: {
|
|
|
|
invite: true,
|
|
|
|
login: false,
|
|
|
|
passwordReset: true,
|
|
|
|
register: true,
|
2023-06-26 04:32:49 -04:00
|
|
|
addEmail: true,
|
2022-01-26 06:15:19 -05:00
|
|
|
},
|
|
|
|
},
|
|
|
|
|
2021-07-20 05:26:23 -04:00
|
|
|
// No email in tests
|
|
|
|
email: undefined,
|
|
|
|
|
|
|
|
test: {
|
|
|
|
counterInit: 0,
|
|
|
|
},
|
2023-11-23 08:55:06 -05:00
|
|
|
|
|
|
|
splitTest: {
|
|
|
|
devToolbar: {
|
|
|
|
enabled: false,
|
|
|
|
},
|
|
|
|
},
|
2021-07-20 05:26:23 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
module.exports.mergeWith = function (overrides) {
|
|
|
|
return merge(overrides, module.exports)
|
|
|
|
}
|