2017-04-12 17:57:55 +00:00
|
|
|
'use strict'
|
|
|
|
|
2018-09-20 23:23:39 +00:00
|
|
|
const os = require('os')
|
|
|
|
|
2017-04-12 17:57:55 +00:00
|
|
|
module.exports = {
|
|
|
|
domain: '',
|
2018-03-07 14:17:35 +00:00
|
|
|
urlPath: '',
|
2018-07-23 00:27:51 +00:00
|
|
|
host: '0.0.0.0',
|
2017-04-12 17:57:55 +00:00
|
|
|
port: 3000,
|
2018-11-13 22:29:33 +00:00
|
|
|
loglevel: 'info',
|
2018-03-07 14:17:35 +00:00
|
|
|
urlAddPort: false,
|
|
|
|
allowOrigin: ['localhost'],
|
|
|
|
useSSL: false,
|
2017-10-12 23:09:04 +00:00
|
|
|
hsts: {
|
|
|
|
enable: true,
|
2018-11-19 21:01:43 +00:00
|
|
|
maxAgeSeconds: 60 * 60 * 24 * 365,
|
2020-03-02 03:51:04 +00:00
|
|
|
includeSubdomains: false,
|
2017-10-12 23:09:04 +00:00
|
|
|
preload: true
|
|
|
|
},
|
2017-10-18 15:10:23 +00:00
|
|
|
csp: {
|
|
|
|
enable: true,
|
|
|
|
directives: {
|
2017-10-18 15:45:57 +00:00
|
|
|
},
|
2017-10-20 10:31:16 +00:00
|
|
|
addDefaults: true,
|
2018-03-30 14:33:32 +00:00
|
|
|
addDisqus: true,
|
|
|
|
addGoogleAnalytics: true,
|
2018-03-10 13:34:14 +00:00
|
|
|
upgradeInsecureRequests: 'auto',
|
|
|
|
reportURI: undefined
|
2017-10-18 15:10:23 +00:00
|
|
|
},
|
2018-03-07 14:17:35 +00:00
|
|
|
protocolUseSSL: false,
|
|
|
|
useCDN: true,
|
2020-03-02 03:58:29 +00:00
|
|
|
allowAnonymous: false,
|
|
|
|
allowAnonymousEdits: true,
|
2019-02-23 04:33:37 +00:00
|
|
|
allowAnonymousViews: true,
|
2018-03-07 14:17:35 +00:00
|
|
|
allowFreeURL: false,
|
2018-11-12 23:14:25 +00:00
|
|
|
forbiddenNoteIDs: ['robots.txt', 'favicon.ico', 'api'],
|
2018-03-07 14:17:35 +00:00
|
|
|
defaultPermission: 'editable',
|
|
|
|
dbURL: '',
|
2017-04-12 17:57:55 +00:00
|
|
|
db: {},
|
|
|
|
// ssl path
|
2018-03-07 14:17:35 +00:00
|
|
|
sslKeyPath: '',
|
|
|
|
sslCertPath: '',
|
|
|
|
sslCAPath: '',
|
|
|
|
dhParamPath: '',
|
2017-04-12 17:57:55 +00:00
|
|
|
// other path
|
2018-09-10 20:35:38 +00:00
|
|
|
viewPath: './public/views',
|
2018-09-20 23:23:39 +00:00
|
|
|
tmpPath: os.tmpdir(),
|
2018-03-07 14:17:35 +00:00
|
|
|
defaultNotePath: './public/default.md',
|
|
|
|
docsPath: './public/docs',
|
2018-06-23 19:47:22 +00:00
|
|
|
uploadsPath: './public/uploads',
|
2017-04-12 17:57:55 +00:00
|
|
|
// session
|
2018-03-07 14:17:35 +00:00
|
|
|
sessionName: 'connect.sid',
|
|
|
|
sessionSecret: 'secret',
|
2018-03-25 22:30:17 +00:00
|
|
|
sessionSecretLen: 128,
|
2018-03-07 14:17:35 +00:00
|
|
|
sessionLife: 14 * 24 * 60 * 60 * 1000, // 14 days
|
|
|
|
staticCacheTime: 1 * 24 * 60 * 60 * 1000, // 1 day
|
2017-04-12 17:57:55 +00:00
|
|
|
// socket.io
|
2018-03-07 14:17:35 +00:00
|
|
|
heartbeatInterval: 5000,
|
|
|
|
heartbeatTimeout: 10000,
|
2019-07-18 04:48:40 +00:00
|
|
|
// toobusy-js
|
|
|
|
responseMaxLag: 70,
|
2017-04-12 17:57:55 +00:00
|
|
|
// document
|
2018-03-07 14:17:35 +00:00
|
|
|
documentMaxLength: 100000,
|
2019-02-01 12:42:12 +00:00
|
|
|
// image upload setting, available options are imgur/s3/filesystem/azure/lutim
|
2018-03-07 14:17:35 +00:00
|
|
|
imageUploadType: 'filesystem',
|
2019-02-01 12:42:12 +00:00
|
|
|
lutim: {
|
|
|
|
url: 'https://framapic.org/'
|
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
imgur: {
|
|
|
|
clientID: undefined
|
|
|
|
},
|
|
|
|
s3: {
|
|
|
|
accessKeyId: undefined,
|
|
|
|
secretAccessKey: undefined,
|
2019-04-15 06:10:54 +00:00
|
|
|
region: undefined,
|
|
|
|
endpoint: undefined
|
2017-04-12 17:57:55 +00:00
|
|
|
},
|
2017-08-30 16:58:34 +00:00
|
|
|
minio: {
|
|
|
|
accessKey: undefined,
|
|
|
|
secretKey: undefined,
|
|
|
|
endPoint: undefined,
|
|
|
|
secure: true,
|
|
|
|
port: 9000
|
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
s3bucket: undefined,
|
2018-05-31 11:15:41 +00:00
|
|
|
azure: {
|
|
|
|
connectionString: undefined,
|
|
|
|
container: undefined
|
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
// authentication
|
2017-06-27 17:08:05 +00:00
|
|
|
oauth2: {
|
2018-10-04 18:43:39 +00:00
|
|
|
providerName: undefined,
|
2017-06-27 17:08:05 +00:00
|
|
|
authorizationURL: undefined,
|
|
|
|
tokenURL: undefined,
|
|
|
|
clientID: undefined,
|
2020-02-27 15:49:05 +00:00
|
|
|
clientSecret: undefined,
|
|
|
|
baseURL: undefined,
|
|
|
|
userProfileURL: undefined,
|
|
|
|
userProfileUsernameAttr: 'username',
|
|
|
|
userProfileDisplayNameAttr: 'displayName',
|
2020-02-27 18:13:58 +00:00
|
|
|
userProfileEmailAttr: 'email',
|
|
|
|
scope: 'email'
|
2017-06-27 17:08:05 +00:00
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
facebook: {
|
|
|
|
clientID: undefined,
|
|
|
|
clientSecret: undefined
|
|
|
|
},
|
|
|
|
twitter: {
|
|
|
|
consumerKey: undefined,
|
|
|
|
consumerSecret: undefined
|
|
|
|
},
|
|
|
|
github: {
|
2019-10-30 08:02:15 +00:00
|
|
|
enterpriseURL: undefined, // if you use github.com, not need to specify
|
2017-04-12 17:57:55 +00:00
|
|
|
clientID: undefined,
|
|
|
|
clientSecret: undefined
|
|
|
|
},
|
|
|
|
gitlab: {
|
|
|
|
baseURL: undefined,
|
|
|
|
clientID: undefined,
|
|
|
|
clientSecret: undefined,
|
2018-09-25 12:15:36 +00:00
|
|
|
scope: undefined,
|
|
|
|
version: 'v4'
|
2017-04-12 17:57:55 +00:00
|
|
|
},
|
2017-10-29 10:16:40 +00:00
|
|
|
mattermost: {
|
|
|
|
baseURL: undefined,
|
|
|
|
clientID: undefined,
|
|
|
|
clientSecret: undefined
|
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
dropbox: {
|
|
|
|
clientID: undefined,
|
2018-01-18 16:25:08 +00:00
|
|
|
clientSecret: undefined,
|
|
|
|
appKey: undefined
|
2017-04-12 17:57:55 +00:00
|
|
|
},
|
|
|
|
google: {
|
|
|
|
clientID: undefined,
|
2020-02-28 09:17:10 +00:00
|
|
|
clientSecret: undefined,
|
|
|
|
hostedDomain: undefined
|
2017-04-12 17:57:55 +00:00
|
|
|
},
|
|
|
|
ldap: {
|
|
|
|
providerName: undefined,
|
|
|
|
url: undefined,
|
|
|
|
bindDn: undefined,
|
|
|
|
bindCredentials: undefined,
|
|
|
|
searchBase: undefined,
|
|
|
|
searchFilter: undefined,
|
|
|
|
searchAttributes: undefined,
|
2017-12-09 10:17:06 +00:00
|
|
|
usernameField: undefined,
|
2018-03-01 22:51:47 +00:00
|
|
|
useridField: undefined,
|
2017-04-12 17:57:55 +00:00
|
|
|
tlsca: undefined
|
|
|
|
},
|
2017-11-28 03:46:58 +00:00
|
|
|
saml: {
|
|
|
|
idpSsoUrl: undefined,
|
|
|
|
idpCert: undefined,
|
|
|
|
issuer: undefined,
|
|
|
|
identifierFormat: 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress',
|
2018-12-12 09:40:24 +00:00
|
|
|
disableRequestedAuthnContext: false,
|
2017-11-28 03:46:58 +00:00
|
|
|
groupAttribute: undefined,
|
|
|
|
externalGroups: [],
|
|
|
|
requiredGroups: [],
|
|
|
|
attribute: {
|
|
|
|
id: undefined,
|
|
|
|
username: undefined,
|
|
|
|
email: undefined
|
|
|
|
}
|
|
|
|
},
|
2019-08-03 13:21:40 +00:00
|
|
|
plantuml: {
|
|
|
|
server: 'https://www.plantuml.com/plantuml'
|
|
|
|
},
|
2017-04-12 17:57:55 +00:00
|
|
|
email: true,
|
2018-03-07 14:17:35 +00:00
|
|
|
allowEmailRegister: true,
|
2018-06-23 21:40:46 +00:00
|
|
|
allowGravatar: true,
|
2017-08-31 21:33:55 +00:00
|
|
|
allowPDFExport: true,
|
2019-10-20 06:14:35 +00:00
|
|
|
openID: false,
|
2019-11-01 02:27:47 +00:00
|
|
|
defaultUseHardbreak: true,
|
2019-10-29 08:56:47 +00:00
|
|
|
// linkifyHeaderStyle - How is a header text converted into a link id.
|
|
|
|
// Header Example: "3.1. Good Morning my Friend! - Do you have 5$?"
|
|
|
|
// * 'keep-case' is the legacy CodiMD value.
|
|
|
|
// Generated id: "31-Good-Morning-my-Friend---Do-you-have-5"
|
|
|
|
// * 'lower-case' is the same like legacy (see above), but converted to lower-case.
|
|
|
|
// Generated id: "#31-good-morning-my-friend---do-you-have-5"
|
|
|
|
// * 'gfm' _GitHub-Flavored Markdown_ style as described here:
|
|
|
|
// https://gist.github.com/asabaylus/3071099#gistcomment-1593627
|
|
|
|
// It works like 'lower-case', but making sure the ID is unique.
|
|
|
|
// This is What GitHub, GitLab and (hopefully) most other tools use.
|
|
|
|
// Generated id: "31-good-morning-my-friend---do-you-have-5"
|
|
|
|
// 2nd appearance: "31-good-morning-my-friend---do-you-have-5-1"
|
|
|
|
// 3rd appearance: "31-good-morning-my-friend---do-you-have-5-2"
|
2019-12-26 08:56:31 +00:00
|
|
|
linkifyHeaderStyle: 'keep-case',
|
|
|
|
autoVersionCheck: true
|
2017-04-12 17:57:55 +00:00
|
|
|
}
|